您的位置:首页 > 其它

ComponentArt:ComboBox 绑定值的方法

2011-03-29 19:49 183 查看
样式:
js验证是否选中://注:用compantArt的comboBox控件是直接取值的,不需要根据document.getElementById取得id  if (cb_filiale.SelectedIndex == "0") {                alert("请选择所属分公司!");                cb_filiale.focus();                return false;            }页面: <ComponentArt:ComboBox ID="cb_filiale" runat="server" Width="174px" AutoHighlight="false"                                                                AutoComplete="true" AutoFilter="true" DataTextField="公司名称" DataValueField="ID"                                                                CssClass="comboBox" HoverCssClass="comboBoxHover" FocusedCssClass="comboBoxHover"                                                                TextBoxCssClass="comboTextBox" DropDownCssClass="comboDropDown" ItemCssClass="comboItem"                                                                ItemHoverCssClass="comboItemHover" SelectedItemCssClass="comboItemSelect" DropHoverImageUrl="../App_Themes/images/combox/drop_hover.gif"                                                                DropImageUrl="../App_Themes/images/combox/drop.gif" TextBoxEnabled="false" />后台: /// <summary>        /// 绑定所属分公司        /// </summary>        /// <param name="comboBox"></param>        private void bindFiliale(ComboBox comboBox)        {            comboBox.Items.Clear();            string filter = string.Empty;            if (LoginUser.UserBranch != "0")            {                filter = string.Format("{0}='{1}'", 分公司信息.Col_ID, LoginUser.UserBranch);            }            ObjModelDataSource<分公司信息> source = new ObjModelDataSource<分公司信息>(DataSourceType.全部读取, filter);            source.AddCandidate(分公司信息.Col_ID, 分公司信息.Col_公司名称);            source.OrderStr = string.Format("{0} asc", 分公司信息.Col_排序);            DataSet ds = source.DataObjectSource;            DataRow row = ds.Tables[0].NewRow();            row[分公司信息.Col_ID] = "-1";            row[分公司信息.Col_公司名称] = "--请选择所属分公司--";            ds.Tables[0].Rows.InsertAt(row, 0);            comboBox.DataSource = ds;            comboBox.DataBind();            comboBox.SelectedIndex = 0;        }查询: if (cbFiliale.SelectedValue != "-1")            {                filter += " and " + string.Format(VIEW_车辆分组.Col_公司名称 + " = '{0}'", cbFiliale.SelectedItem.Text);}//初始化值:            cb_filiale.SelectedValue = "-1";添加(把选中的id插入数据库): carGroup.分公司ID = cb_filiale.SelectedValue;赋值(把值显示在页面):     cb_filiale.SelectedValue = carGroup.分公司ID;


两级联动:
页面:<ComponentArt:ComboBox ID="cb_state" runat="server" AutoHighlight="false" AutoComplete="true"                                                      AutoFilter="true" CssClass="comboBox" HoverCssClass="comboBoxHover" FocusedCssClass="comboBoxHover"                                                  TextBoxCssClass="comboTextBox" DropDownCssClass="comboDropDown" ItemCssClass="comboItem"                                                     ItemHoverCssClass="comboItemHover" SelectedItemCssClass="comboItemSelect" DropHoverImageUrl="../App_Themes/images/combox/drop_hover.gif"                                                   DropImageUrl="../App_Themes/images/combox/drop.gif" Width="175px" TextBoxEnabled="false" />后台全部枚举绑定:/// <summary>                                                                                                               /// 绑定装卸货点(所有枚举中的信息)                                                                                       /// </summary>                                                                                                           private void bindState()                                                                                                 {                                                                                                                            Type ty = typeof(TransportPlanEnum.LOADSTATEState);                                                                      ComboBoxItem comboBoxItem;                                                                                               comboBoxItem = new ComboBoxItem();                                                                                       comboBoxItem.Text = "--请选择开关设置--";                                                                                comboBoxItem.Value = "-1";                                                                                               cb_state.Items.Add(comboBoxItem);                                                                                                                                                                                                                 foreach (string item in Enum.GetNames(ty))                                                                               {                                                                                                                            comboBoxItem = new ComboBoxItem();                                                                                       comboBoxItem.Text = item;                                                                                                TransportPlanEnum.LOADSTATEState loadOrUnloadState = (TransportPlanEnum.LOADSTATEState)Enum.Parse(ty, item);             comboBoxItem.Value = Convert.ToInt32(loadOrUnloadState).ToString();                                                      cb_state.Items.Add(comboBoxItem);                                                                                    }                                                                                                                        cb_state.SelectedValue = "-1";                                                                                       }                                                                                                                     只是枚举中的几个条件                                                                                                           private void bindState()                                                                                               {                                                                                                                          Type ty = typeof(TransportPlanEnum.LOADSTATEState);                                                                    ComboBoxItem comboBoxItem;                                                                                             comboBoxItem = new ComboBoxItem();                                                                                     comboBoxItem.Text = "--请选择状态--";                                                                                  comboBoxItem.Value = "-1";                                                                                             cb_state.Items.Add(comboBoxItem);                                                                                                                                                                                                             comboBoxItem = new ComboBoxItem();                                                                                     comboBoxItem.Text = TransportPlanEnum.TransportPlanState.已提交.ToString();                                            comboBoxItem.Value = (Convert.ToInt32(TransportPlanEnum.TransportPlanState.已提交)).ToString();                        cb_state.Items.Add(comboBoxItem);                                                                                                                                                                                                             comboBoxItem = new ComboBoxItem();                                                                                     comboBoxItem.Text = TransportPlanEnum.TransportPlanState.已派车.ToString();                                            comboBoxItem.Value = (Convert.ToInt32(TransportPlanEnum.TransportPlanState.已派车)).ToString();                        cb_state.Items.Add(comboBoxItem);                                                                                                                                                                                                             cb_state.SelectedValue = "-1";                                                                                     }                                                                                                                    //查询                                                         if (cb_state.SelectedValue != "-1" && !string.IsNullOrEmpty(cb_state.SelectedValue))                                                           {                                                                                                                                       filter += " and " + string.Format(VIEW_PLAN_MATCHSEND.Col_PLANISPLANFULL + "='{0}'", cb_state.SelectedValue);                   }   //枚举定义枚举:                                                                                      using System;                                                                               using System.Collections.Generic;                                                           using System.Linq;                                                                          using System.Text;                                                                                                                                                                      namespace YC.SH.TP                                                                          {                                                                                               public class TransportPlanEnum                                                              {                                                                                          /// <summary>                                                                                    /// 任务单装货状态                                                                          /// </summary>                                                                              public enum LOADSTATEState                                                                  {                                                                                               未到达 = 0,                                                                                 已到达,                                                                                     开始装货,                                                                                   装货完成,                                                                                   离开装货地                                                                              }                                                                                       }                                                                                       }                                                                                                                                                                                                                                                                                   枚举在页面后台的用法:                                                                                  string aa = TransportPlanEnum.LOADSTATEState.未到达.ToString();//未到达                     decimal  bb = Convert.ToDecimal(TransportPlanEnum.LOADSTATEState.未到达);//0


年龄的绑定:
必要条件:一个单中只有一个车牌号码,所以可以把车牌号码作为value,这样就不需要callBack了   //js方法: function cb_matchCodeChange(sender, eventArgs) {                                         var truckCode = sender.getSelectedItem().get_value();                         if (truckCode == undefined) {                                                     document.getElementById("tb_carNumber").value = "";                       } else {                                                                          document.getElementById("tb_carNumber").value = truckCode;                }                                                                         }                                                                                                                                               //前台:<td style="width: 80px" align="right" nowrap>                                                                                                                                                             派车单号:                                                                                                                                                </td>                                                                                                                                                         <td nowrap style="width: 200px">                                                                                                                                  <ComponentArt:ComboBox ID="cb_matchCode" runat="server" FilterCacheSize="0" AutoHighlight="true"                                                                  AutoComplete="true" AutoFilter="false" RunningMode="CallBack" DataTextField="MATCHCODE"                                                                       DataValueField="TRUCKCODEPROVIDE" CssClass="comboBox" HoverCssClass="comboBoxHover"                                                                           FocusedCssClass="comboBoxHover" TextBoxCssClass="comboTextBox" DropDownCssClass="comboDropDown"                                                               ItemCssClass="comboItem" ItemHoverCssClass="comboItemHover" SelectedItemCssClass="comboItemSelect"                                                            DropDownResizingMode="Corner" DropHoverImageUrl="../App_Themes/images/combox/drop_hover.gif"                                                                  DropImageUrl="../App_Themes/images/combox/drop.gif" Width="170" TextBoxEnabled="false"                                                                        DropDownWidth="170" DropDownHeight="297">                                                                                                                     <ClientEvents>                                                                                                                                                    <Change EventHandler="cb_matchCodeChange" />                                                                                                              </ClientEvents>                                                                                                                                           </ComponentArt:ComboBox>                                                                                                                                  </td>                                                                                                                                                         <td style="width: 80px" align="right" nowrap>                                                                                                                     车牌号码:                                                                                                                                                </td>                                                                                                                                                         <td nowrap style="width: 200px">                                                                                                                                  <asp:TextBox ID="tb_carNumber" runat="server" CssClass="input01" MaxLength="20" onblur="this.className='input01'"                                                 onfocus="this.className='input02';" Enabled="false" />                                                                                                </td>                                                                                                                 后台:只需要绑定comboBox就可以了/// <summary>                                                                                                                                              /// 绑定派车单号                                                                                                                                    /// </summary>                                                                                                                                      private void bindMatchCode()                                                                                                                        {                                                                                                                                                       cb_matchCode.Items.Clear();                                                                                                                         string filter = string.Format(T_MATCH_SEND_查询.Col_MATCHSTATE + "='{0}'", Convert.ToDecimal(TransportPlanEnum.SendCarState.已结单));               ObjModelDataSource<T_MATCH_SEND_查询> Isource = new ObjModelDataSource<T_MATCH_SEND_查询>();                                                        Isource.AddCandidate(T_MATCH_SEND_查询.Col_MATCHCODE, T_MATCH_SEND_查询.Col_TRUCKCODEPROVIDE);                                                      DataSet Ids = Isource.DataObjectSource;                                                                                                             Ids.Tables[0].Rows.InsertAt(row, 0);                                                                                                                cb_matchCode.DataSource = Ids;                                                                                                                      cb_matchCode.DataBind();                                                                                                                            cb_matchCode.SelectedIndex = 0;                                                                                                                 }


comboBox绑定树:
js:js:                                                                                               //业务类型                                                                                             function cb_businessTypeTree_onNodeSelect(sender, eventArgs) {                                       document.getElementById("hf_businessType").value = eventArgs.get_node().get_value();             cb_businessTypeTree.set_text(eventArgs.get_node().get_text()); //设置comboxtext                  cb_businessTypeTree.collapse();                                                              }                                                                                        界面:                                                                                                                                                                  <td onkeydown="return false;" onpaste="return false;" style="width: 172px;">                                                                                                                                                  <asp:HiddenField ID="hf_businessType" runat="server" />                                                                                                                   <ComponentArt:ComboBox ID="cb_businessTypeTree" runat="server" AutoFilter="false"                                                                                             AutoHighlight="false" AutoComplete="false" CssClass="comboBox" HoverCssClass="comboBoxHover"                                                                              FocusedCssClass="comboBoxHover" TextBoxCssClass="comboTextBox" DropDownCssClass="comboDropDown"                                                                           ItemCssClass="comboItem" ItemHoverCssClass="comboItemHover" SelectedItemCssClass="comboItemSelect"                                                                        DropHoverImageUrl="../App_Themes/images/combox/drop_hover.gif" DropImageUrl="../App_Themes/images/combox/drop.gif"                                                        Width="100%" DropDownHeight="300" DropDownWidth="170">                                                                                                                    <DropDownContent>                                                                                                                                                             <ComponentArt:TreeView ID="tv_businessType" DragAndDropEnabled="false" NodeEditingEnabled="false"                                                                             NodeCssClass="TreeNode" SelectedNodeCssClass="SelectedTreeNode" HoverNodeCssClass="HoverTreeNode"                                                                         NodeEditCssClass="NodeEdit" LineImageWidth="19" LineImageHeight="20" DefaultImageWidth="16"                                                                               DefaultImageHeight="16" ItemSpacing="0" NodeLabelPadding="3" ImagesBaseUrl="../App_Themes/images/Main/"                                                                   LineImagesFolderUrl="../App_Themes/images/Treeview/" ShowLines="true" EnableViewState="false"                                                                             runat="server" Height="300" Width="100%">                                                                                                                                 <ClientEvents>                                                                                                                                                                <NodeSelect EventHandler="cb_businessTypeTree_onNodeSelect" />                                                                                                        </ClientEvents>                                                                                                                                                       </ComponentArt:TreeView>                                                                                                                                              </DropDownContent>                                                                                                                                                    </ComponentArt:ComboBox>                                                                                              后台代码:                                                                                                           固定的东西:                                                                                                          /// <summary>                                                                                                               /// 业务类型                                                                                                         /// </summary>                                                                                                       private void bindBusinessType()                                                                                      {                                                                                                                        tv_businessType.Nodes.Clear();                                                                                                                                                                                                            TreeViewNode parentsNode = new TreeViewNode();                                                                       parentsNode.Text = "全部";                                                                                           parentsNode.Value = "-1,-1";                                                                                         parentsNode.ImageUrl = "folder.gif";                                                                                 parentsNode.ExpandedImageUrl = "folder_open.gif";                                                                    parentsNode.Expanded = true;                                                                                         tv_businessType.Nodes.Add(parentsNode);                                                                                                                                                                                                   TreeViewNode NBNode = new TreeViewNode();                                                                            NBNode.Text = "内部企业";                                                                                            NBNode.Value = "0,0";                                                                                                NBNode.ImageUrl = "company1.png";                                                                                    NBNode.ToolTip = "内部企业";                                                                                         NBNode.ExpandedImageUrl = "company2.png";                                                                            NBNode.Selectable = false;                                                                                           NBNode.Expanded = false;                                                                                             String NBurl = String.Format("../TreeViewUrl.aspx?parentID={0}&chlidType=28", Server.UrlEncode("0"));                NBNode.ContentCallbackUrl = NBurl;                                                                                   parentsNode.Nodes.Add(NBNode);                                                                                                                                                                                                            TreeViewNode GDNode = new TreeViewNode();                                                                            GDNode.Text = "固定客户";                                                                                            GDNode.Value = "1,1";                                                                                                GDNode.ImageUrl = "company1.png";                                                                                    GDNode.ToolTip = "固定客户";                                                                                         GDNode.ExpandedImageUrl = "company2.png";                                                                            parentsNode.Nodes.Add(GDNode);                                                                                                                                                                                                            TreeViewNode FGNode = new TreeViewNode();                                                                            FGNode.Text = "非固定客户";                                                                                          FGNode.Value = "2,2";                                                                                                FGNode.ImageUrl = "company1.png";                                                                                    FGNode.ToolTip = "非固定客户";                                                                                       FGNode.ExpandedImageUrl = "company2.png";                                                                            parentsNode.Nodes.Add(FGNode);                                                                                   }


comboBox绑定不固定的树
js: function TreeView1_onNodeSelect(sender, eventArgs) { cb_carNumber.set_text(eventArgs.get_node().get_text()); //设置comboxtext document.getElementById("hd_tree").value = eventArgs.get_node().get_value(); cb_carNumber.collapse(); }界面: <td align="left" onkeydown="return false;" onpaste="return false;"> <asp:HiddenField ID="hd_tree" runat="server" Value="-1,-1" /> <ComponentArt:ComboBox ID="cb_carNumber" Width="180" runat="server" AutoFilter="false" AutoHighlight="false" AutoComplete="false" CssClass="comboBox" HoverCssClass="comboBoxHover" FocusedCssClass="comboBoxHover" TextBoxCssClass="comboTextBox" DropDownCssClass="comboDropDown" ItemCssClass="comboItem" ItemHoverCssClass="comboItemHover" SelectedItemCssClass="comboItemSelect" DropHoverImageUrl="../App_Themes/images/combox/drop_hover.gif" DropImageUrl="../App_Themes/images/combox/drop.gif" DropDownHeight="297" DropDownWidth="216"> <DropDownContent> <ComponentArt:TreeView ID="TreeView1" DragAndDropEnabled="false" NodeEditingEnabled="false" NodeCssClass="TreeNode" SelectedNodeCssClass="SelectedTreeNode" HoverNodeCssClass="HoverTreeNode" NodeEditCssClass="NodeEdit" LineImageWidth="19" LineImageHeight="20" DefaultImageWidth="16" DefaultImageHeight="16" ItemSpacing="0" NodeLabelPadding="3" ImagesBaseUrl="../App_Themes/images/Main/" LineImagesFolderUrl="../App_Themes/images/combox/" ShowLines="true" EnableViewState="false" runat="server" Height="297" Width="216"> <ClientEvents> <NodeSelect EventHandler="TreeView1_onNodeSelect" /> </ClientEvents> </ComponentArt:TreeView> </DropDownContent> <ClientEvents> <Collapse EventHandler="isCarNumber" /> </ClientEvents> </ComponentArt:ComboBox>后台: /// <summary> /// 绑定树 /// </summary> private void BindTreeView() { //清除树节点 TreeView1.Nodes.Clear(); TreeViewNode parentsNode = new TreeViewNode(); parentsNode.ImageUrl = "folder.gif"; parentsNode.ExpandedImageUrl = "folder_open.gif"; parentsNode.Text = "--请选择车牌号码--"; parentsNode.Value = "-1,-1"; parentsNode.Expanded = true; TreeView1.Nodes.Add(parentsNode); string filter = string.Empty; if (LoginUser.UserBranch != "0") { filter = string.Format("{0}='{1}'", 分公司信息.Col_ID, LoginUser.UserBranch); } ObjModelDataSource<分公司信息> source = new ObjModelDataSource<分公司信息>(DataSourceType.全部读取, filter); source.AddCandidate(分公司信息.Col_ID, 分公司信息.Col_公司名称); source.OrderStr = string.Format("{0} asc", 分公司信息.Col_排序); foreach (DataRow dept in source.DataObjectSource.Tables[0].Rows) { TreeViewNode node = new TreeViewNode(); node.Text = dept[分公司信息.Col_公司名称].ToString(); if (dept[分公司信息.Col_ID].ToString() == "0") { node.ImageUrl = "mastcompany1.png"; node.ToolTip = "总公司"; node.ExpandedImageUrl = "mastcompany2.png"; } else { node.ImageUrl = "company1.png"; node.ToolTip = "分公司"; node.ExpandedImageUrl = "company2.png"; } node.Selectable = false; node.Value = string.Format("{0},{1}", dept[分公司信息.Col_ID], "0"); string url = string.Format("../TreeViewUrl.aspx?parentID={0}&chlidType=32", Server.UrlEncode(dept[分公司信息.Col_ID].ToString())); node.ContentCallbackUrl = url; parentsNode.Nodes.Add(node); } }树的查询:string comboxValue = hd_tree.Value; string[] cobpars = comboxValue.Split(','); string parentID = cobpars[0]; string parentType = cobpars[1];if (parentType == "-1")//如果是查询全部 { if (LoginUser.UserBranch != "0")//如果当前登录人不是总公司用户 { filter.Append(string.Format(" and {0} = '{1}'", VIEW_电瓶信息.Col_使用单位ID, LoginUser.UserBranch)); } } else//不是查询全部 { if (parentType == "0")//查询公司 { filter.Append(string.Format(" and {0} = '{1}'", VIEW_电瓶信息.Col_使用单位ID, parentID)); } else//查询分组 { filter.Append(string.Format(" and {0} = '{1}'", VIEW_电瓶信息.Col_分组ID, parentID)); } }

树的事件绑定动态的dataList
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Serv_FittingsSetAddInsert.aspx.cs"
Inherits="YC.SH.WEB.Service.Serv_FittingsSetAddInsert" %>

<%@ Register Assembly="ComponentArt.Web.UI" Namespace="ComponentArt.Web.UI" TagPrefix="ComponentArt" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Cache-Control" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<title>清点配件添加</title>
<link href="../App_Themes/DefaultThemes/main.css" rel="stylesheet" type="text/css" />
<link href="../App_Themes/DefaultThemes/dialog.css" rel="stylesheet" type="text/css" />
<link href="../App_Themes/DefaultThemes/submit.css" rel="stylesheet" type="text/css" />
<link href="../App_Themes/DefaultThemes/treeStyle.css" rel="stylesheet" type="text/css" />
<link href="../App_Themes/DefaultThemes/combobox.css" rel="stylesheet" type="text/css" />

<script src="../js/calendars.js" type="text/javascript"></script>

<script type="text/javascript" src="../js/validate.js"></script>

<style type="text/css">
li, ul, dt, form, ol, FIELDSET, p, h1, h2, h3, h4, h5, TABLE, IMG, dl, dt, dd
{
margin: 0px;
padding: 0px;
border: 0px;
list-style: none;
}
body
{
margin: 0;
padding: 0;
text-align: center;
font-size: 12px;
}
A:link, A:visited
{
font: "宋体";
color: #1c1c1c;
text-decoration: none;
}
A:hover, A:active
{
text-decoration: underline;
color: #000000;
}
.list_kt
{
height: 30px;
width: 500px;
background: #BFEFFF;
border: #B0E2FF solid 1px;
margin: 3px auto;
font-weight: bold;
}
.list_kt .lkttbt
{
float: left;
width: 200px;
line-height: 30px;
text-align: left;
margin-left: 10px;
}
.list_kt .lktxbt
{
line-height: 30px;
font-size: 12px;
width: 100px;
float: left;
}
.list_kt .lktxrt
{
line-height: 30px;
font-size: 12px;
width: 65px;
float: right;
margin-right: 10px;
text-align: center;
}
.list_kb
{
height: 30px;
width: 500px;
background: #FDF9D6;
border: #FECC46 solid 1px;
margin: 3px auto;
}
.list_kb .lkttb
{
float: left;
width: 200px;
line-height: 30px;
text-align: left;
margin-left: 10px;
}
.list_kb .lktxb
{
line-height: 30px;
font-size: 12px;
width: 100px;
float: left;
}
.list_kb .lktxr
{
line-height: 30px;
font-size: 12px;
width: 65px;
float: right;
margin-right: 10px;
text-align: center;
}
.list_kb .lktxr input
{
height: 21px;
width: 46px;
line-height: 20px;
border: #87A3C1 solid 1px;
margin-top: 2px;
color: #333;
}
.list_kb .txtext
{
float: left;
margin-right: 3px;
width: 150px;
text-align: right;
vertical-align: middle;
}
.list_kb .intext
{
padding-top: 3px;
}
</style>

<script type="text/javascript" language="javascript">
function tv_carNumber_OnNodeSelect(sender, eventArgs) {
cb_carNumber.set_text(eventArgs.get_node().get_text()); //设置comboxtext
cb_carNumber.collapse();
Callback_Edit.callback("carNumber", eventArgs.get_node().get_text());
}
//保存dialog的数据
function save() {
if (saveValidate()) {
var obj = document.getElementById("<%=DataList1.ClientID%>");
var objstr = "";
if (obj != null) {
var objItemList = obj.getElementsByTagName("input");
for (var i = 0; i < objItemList.length; i++) {
if (objItemList[i] != null && objItemList[i].type == "hidden") {
objstr += objItemList[i].value + "|";
} else {
objstr += objItemList[i].value + "*";
}
}
}
if (objstr != "" && objstr.length > 0) {
objstr = objstr.substring(0, objstr.length - 1);
}
//                alert(objstr);

callBack_save.callback("save", objstr);
}
}

//保存的前台验证
function saveValidate() {
var carNumber = cb_carNumber.get_text();
var tb_checkTime = document.getElementById("tb_checkTime");
if (carNumber == null || carNumber == "--请选择车牌号码--") {
alert("请选择车牌号码!");
cb_carNumber.focus();
return false;
}
if (!checkInputValueIsEmpty(tb_checkTime)) {
alert("请选入清点时间!");
tb_checkTime.focus();
return false;
}
var obj = document.getElementById("<%=DataList1.ClientID%>");
var objItemList = obj.getElementsByTagName("input");
if (obj != null) {
for (var t = 0; t < objItemList.length; t++) {
if (objItemList[t].type == "text") {
if (objItemList[t].value == "") {
objItemList[t].focus();
return false;
}
}
}
}

return true;
}

//刷新窗口
function refreshPage() {
window.returnValue = true;
window.close();
}
</script>

</head>
<body>
<form id="form1" runat="server">
<div>
<asp:HiddenField ID="hf_command" runat="server" />
<ComponentArt:CallBack ID="callBack_save" runat="server" PostState="true" OnCallback="callBack_save_Callback" />
<table cellpadding="0" cellspacing="0">
<tr>
<td>
<table cellpadding="0" cellspacing="0" width="500px">
<tr>
<td style="width: 65px" align="right" nowrap>
车牌号码:
</td>
<td style="width: 150px" onpaste="return false;" onkeydown="return false;">
<ComponentArt:ComboBox ID="cb_carNumber" runat="server" AutoFilter="false" AutoHighlight="false"
AutoComplete="false" CssClass="comboBox" HoverCssClass="comboBoxHover" FocusedCssClass="comboBoxHover"
TextBoxCssClass="comboTextBox" DropDownCssClass="comboDropDown" ItemCssClass="comboItem"
ItemHoverCssClass="comboItemHover" SelectedItemCssClass="comboItemSelect" DropHoverImageUrl="../App_Themes/images/combox/drop_hover.gif"
DropImageUrl="../App_Themes/images/combox/drop.gif" Width="153" DropDownHeight="297"
DropDownWidth="216">
<DropDownContent>
<ComponentArt:TreeView ID="tv_carNumber" DragAndDropEnabled="false" NodeEditingEnabled="false"
NodeCssClass="TreeNode" SelectedNodeCssClass="SelectedTreeNode" HoverNodeCssClass="HoverTreeNode"
NodeEditCssClass="NodeEdit" LineImageWidth="19" LineImageHeight="20" DefaultImageWidth="16"
DefaultImageHeight="14" ItemSpacing="0" NodeLabelPadding="3" ImagesBaseUrl="../App_Themes/images/Main/"
LineImagesFolderUrl="../App_Themes/images/Treeview/" ShowLines="true" EnableViewState="true"
runat="server">
<ClientEvents>
<NodeSelect EventHandler="tv_carNumber_OnNodeSelect" />
</ClientEvents>
</ComponentArt:TreeView>
</DropDownContent>
</ComponentArt:ComboBox>
</td>
<td style="width: 3px" align="left">
<span style="color: Red">*</span>
</td>
<td align="right" style="width: 80px" nowrap>
清点时间:
</td>
<td style="width: 150px">
<asp:TextBox ID="tb_checkTime" runat="server" CssClass="input05" Width="150px" onfocus="this.className='input02';this.select();setday(this);"
onblur="this.className='input01';DBC2SBC(this);" />
</td>
<td align="left">
<span style="color: Red">*</span>
</td>
</tr>
<tr>
<td colspan="6">
<ComponentArt:CallBack ID="Callback_Edit" runat="server" PostState="true" OnCallback="CallBack_Edit_Callback">
<Content>
<asp:PlaceHolder ID="pl_checkData" runat="server">
<asp:DataList ID="DataList1" runat="server" BorderWidth="0" CellPadding="0" CellSpacing="1">
<HeaderTemplate>
<div class="list_kt">
<div class="lkttbt">
配件名称
</div>
<div class="lktxbt">
上次清点数
</div>
<div class="lktxrt">
本次清点数
</div>
</div>
</HeaderTemplate>
<ItemTemplate>
<div class="list_kb">
<div class="lkttb">
<asp:HiddenField ID="hid_id" runat="server" Value='<%# DataBinder.Eval(Container.DataItem, "配件ID")%>' />
<%# DataBinder.Eval(Container.DataItem, "配件名称")%>
</div>
<div class="lktxb">
<%# DataBinder.Eval(Container.DataItem, "配件数量")%>
</div>
<div class="lktxr">
<asp:TextBox ID="tb_thisCount" runat="server" MaxLength="30" CssClass="input05" onfocus="this.className='input02';this.select();"
onblur="this.className='input01';DBC2SBC(this);" Width="60px" Style="ime-mode: disabled"
onkeypress="KeyPressNum(this);" />
</div>
</div>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:DataList>
</asp:PlaceHolder>
</Content>
</ComponentArt:CallBack>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td align="center">
<input type="button" id="DialogButton" onclick='save();' value=" 确定 " class="btn02"
onmouseover="this.className='btn04'" onmouseout="this.className='btn02'" />
<input type='button' onclick='window.close();' value='取消' class="btn02" onmouseover="this.className='btn04'"
onmouseout="this.className='btn02'" />
</td>
</tr>
</table>
</div>
</form>
</body>
</html>

--后台--
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using YC.SH.Service;
using YC.DB.DataSource;
using SHIB3.DataAccess.T;
using System.Data;
using ComponentArt.Web.UI;
using YC.SH.Sevice;

namespace YC.SH.WEB.Service
{
public partial class Serv_FittingsSetAddInsert : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindTreeView();
tb_checkTime.Attributes.Add("readOnly","readOnly");
hf_command.Value = "insert";
}
}

/// <summary>
/// 绑定数据源
/// </summary>
private void bingSource(string filter)
{
ObjModelDataSource<VIEW_随车配件设置> obj = new ObjModelDataSource<VIEW_随车配件设置>(filter);
DataList1.DataSource = obj;
DataList1.DataBind();

}

/// <summary>
/// 绑定树
/// </summary>
private void BindTreeView()
{
//清除树节点
tv_carNumber.Nodes.Clear();
TreeViewNode parentsNode = new TreeViewNode();
parentsNode.ImageUrl = "folder.gif";
parentsNode.ExpandedImageUrl = "folder_open.gif";
cb_carNumber.Text = parentsNode.Text = "--请选择车牌号码--";
parentsNode.Value = "-1,-1";
parentsNode.Expanded = true;
tv_carNumber.Nodes.Add(parentsNode);

string filter = string.Empty;
ObjModelDataSource<分公司信息> source = new ObjModelDataSource<分公司信息>(DataSourceType.全部读取, filter);
source.AddCandidate(分公司信息.Col_ID, 分公司信息.Col_公司名称);
source.OrderStr = string.Format("{0} asc", 分公司信息.Col_排序);
foreach (DataRow dept in source.DataObjectSource.Tables[0].Rows)
{
TreeViewNode node = new TreeViewNode();
node.Text = dept[分公司信息.Col_公司名称].ToString();

if (dept[分公司信息.Col_ID].ToString() == "0")
{
node.ImageUrl = "mastcompany1.png";
node.ToolTip = "总公司";
node.ExpandedImageUrl = "mastcompany2.png";
}
else
{
node.ImageUrl = "company1.png";
node.ToolTip = "分公司";
node.ExpandedImageUrl = "company2.png";
}
node.Expanded = false;
node.Selectable = false;//不能被选择
node.Value = string.Format("{0},{1}", dept[分公司信息.Col_ID], "0");
string url = string.Format("../TreeViewUrl.aspx?parentID={0}&chlidType=3", Server.UrlEncode(dept[分公司信息.Col_ID].ToString()));
node.ContentCallbackUrl = url;
parentsNode.Nodes.Add(node);
}
}

//添加
protected void callBack_save_Callback(object sender, ComponentArt.Web.UI.CallBackEventArgs e)
{
string js = string.Empty;
string[] pars = e.Parameters;
switch (pars[0])
{
case "save":
string comm = hf_command.Value;
switch (comm)
{
case "insert":
int insertResult = Insert(pars[1]);

switch (insertResult)
{
case 0:
js = "<script>alert('添加成功!');refreshPage();</script>";
break;
case 2:
js = "<script>alert('数据库操作失败!')</script>";
break;
}
break;
}
break;

default:
break;
}
if (!string.IsNullOrEmpty(js))
{
e.Output.Write(js);
}
}

//操作
protected void CallBack_Edit_Callback(object sender, ComponentArt.Web.UI.CallBackEventArgs e)
{
string js = string.Empty;
string[] pars = e.Parameters;
switch (pars[0])
{
case "carNumber":
string filter = string.Format("{0}='{1}'", VIEW_随车配件设置.Col_车牌号码, pars[1]);
bingSource(filter);
break;
default:
break;
}
pl_checkData.RenderControl(e.Output);
}

/// <summary>
/// 添加
/// </summary>
/// <returns></returns>
private int Insert(string strValue)
{
int result = 0;
FittingsCheckRecord fittingCheckRecord = new FittingsCheckRecord();
List<配件清点记录> list = new List<配件清点记录>();

string[] strList = strValue.Split('*');

for (int i = 0; i < strList.Length; i++)
{

string[] objvalue = strList[i].Split('|');

//foreach (DataListItem item in DataList1.Items)
//{
//  Label lb_配件ID = item.FindControl("Label1") as Label;

配件清点记录 obj = new 配件清点记录();
obj.配件ID = objvalue[0];
obj.清点人 = LoginUser.LoginName;
obj.车牌号码 = cb_carNumber.Text;
obj.配件数量 = Convert.ToDecimal(objvalue[1]);
obj.清点时间 = Convert.ToDateTime(tb_checkTime.Text);
list.Add(obj);
//}
}
bool resultResult = false;
if (list != null && list.Count > 0)
{
resultResult = fittingCheckRecord.FittingsCheckRecordListInsert(list, LoginUser);
}
if (resultResult)
{
result = 0;
}
else
{
result = 2;
}
return result;
}

}
}

---添加方法--

/// <summary>
/// 添加配件清点记录
/// </summary>
/// <param name="obj"></param>
/// <param name="user"></param>
/// <returns>true 成功,false 失败</returns>
public bool FittingsCheckRecordListInsert(List<配件清点记录> List, SysUser user)
{
bool result = false;
using (DatabaseCommand db = DBFactory.CreateDB(配件清点记录.DBNAME))
{
if (List != null)
{
db.BeginTransaction();
foreach (配件清点记录 obj in List)
{
result = db.InsertObj(obj);
if (result)
{
if (user != null)
{
string context = string.Format("添加ID为{0}的配件清点记录", obj.ID);
操作日志 log = LogCommand.getLog(user.UserName, user.UserID, "添加配件清点记录", 页面, context);
db.InsertObj(log);
}
}
else
{
break;
}
}
if (result)
{
db.Commit();
}
else
{
db.Rollback();
}
}
}
return result;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐