ComponentArt:ComboBox 绑定值的方法

样式:

<textarea class="c-sharp" rows="15" cols="50" name="code">&lt;mce:style type=&quot;text/css&quot;&gt;&lt;!-- .comboBox { border: 1px solid #A6A7AA; background-color: white; } .comboBoxHover { border: 1px solid #555555; background-color: white; } .comboDropDown { border: 1px solid #868686; background-color: white; padding: 1px; padding-right: 0px; cursor: default; } .comboTextBox { border: 0px; padding-left: 2px; padding-right: 2px; background-color: white; } .comboTextBoxHover { background-color: #B2B4BF; } .comboItem { font-family: Verdana; font-size: 11px; padding: 3px; padding-top: 4px; padding-bottom: 4px; } .comboItemHover { font-family: Verdana; font-size: 11px; border-bottom: 1px solid #4B4B6F; border-top: 1px solid #4B4B6F; padding: 3px; padding-top: 3px; padding-bottom: 3px; cursor: pointer; } .comboItemSelect { background-color: #FFEEC2; font-family: Verdana; font-size: 11px; border: 1px solid #4B4B6F; padding: 3px; padding-top: 3px; padding-bottom: 3px; cursor: pointer; } --&gt;&lt;/mce:style&gt;&lt;style type=&quot;text/css&quot; mce_bogus=&quot;1&quot;&gt; .comboBox { border: 1px solid #A6A7AA; background-color: white; } .comboBoxHover { border: 1px solid #555555; background-color: white; } .comboDropDown { border: 1px solid #868686; background-color: white; padding: 1px; padding-right: 0px; cursor: default; } .comboTextBox { border: 0px; padding-left: 2px; padding-right: 2px; background-color: white; } .comboTextBoxHover { background-color: #B2B4BF; } .comboItem { font-family: Verdana; font-size: 11px; padding: 3px; padding-top: 4px; padding-bottom: 4px; } .comboItemHover { font-family: Verdana; font-size: 11px; border-bottom: 1px solid #4B4B6F; border-top: 1px solid #4B4B6F; padding: 3px; padding-top: 3px; padding-bottom: 3px; cursor: pointer; } .comboItemSelect { background-color: #FFEEC2; font-family: Verdana; font-size: 11px; border: 1px solid #4B4B6F; padding: 3px; padding-top: 3px; padding-bottom: 3px; cursor: pointer; } &lt;/style&gt;</textarea>

 

comboBox的js取值:

一)componentArt控件在js取值都不需要document.getElementById(),直接用的id

例如<componentArt:combox id="cb_comboBox" runat="server"/>

1.if(cb_comboBox .getSelectedItem() ==null||cb_comboBox .SelectedIndex == 0)
            {
                alert("请选择分公司名称!")
                   cb_comboBox .focus();
                    return false;
            }

 

2.cb_comboBox.get_text().Trim()

二)设置值:cb_comboBox.set_text(carNumber);

三)启用:cb_comboBox.enable();

四)禁用: cb_comboBox.disable();

 

一般的绑定:类型dropdownlist,只是显示

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

 

 

两级联动:

<textarea class="c-sharp" rows="15" cols="50" name="code">方法一(全部用callback包含起来):js: //根据省的变化显示市 function showCity(sender, eventArgs) { callback_goalAddress.Callback(&quot;showCity&quot;, sender.getSelectedItem().get_value()); }页面:&lt;td align=&quot;right&quot; nowrap&gt; 目的地: &lt;/td&gt; &lt;td colspan=&quot;3&quot;&gt; &lt;ComponentArt:CallBack ID=&quot;callback_goalAddress&quot; runat=&quot;server&quot; PostState=&quot;true&quot; OnCallback=&quot;callback_goalAddress_Callback&quot;&gt; &lt;Content&gt; &lt;asp:PlaceHolder ID=&quot;ph_goalAddress&quot; runat=&quot;server&quot;&gt; &lt;table&gt; &lt;tr&gt; &lt;td&gt; &lt;ComponentArt:ComboBox ID=&quot;cb_province&quot; runat=&quot;server&quot; Width=&quot;150px&quot; AutoHighlight=&quot;false&quot; AutoComplete=&quot;true&quot; AutoFilter=&quot;true&quot; DataValueField=&quot;ID&quot; DataTextField=&quot;NAME&quot; CssClass=&quot;comboBox&quot; HoverCssClass=&quot;comboBoxHover&quot; FocusedCssClass=&quot;comboBoxHover&quot; TextBoxCssClass=&quot;comboTextBox&quot; DropDownCssClass=&quot;comboDropDown&quot; ItemCssClass=&quot;comboItem&quot; ItemHoverCssClass=&quot;comboItemHover&quot; SelectedItemCssClass=&quot;comboItemSelect&quot; DropHoverImageUrl=&quot;../App_Themes/Default/images/combox/drop_hover.gif&quot; DropImageUrl=&quot;../App_Themes/Default/images/combox/drop.gif&quot; TextBoxEnabled=&quot;false&quot;&gt; &lt;ClientEvents&gt; &lt;Change EventHandler=&quot;showCity&quot; /&gt; &lt;/ClientEvents&gt; &lt;/ComponentArt:ComboBox&gt; &lt;/td&gt; &lt;td&gt; — &lt;/td&gt; &lt;td&gt; &lt;ComponentArt:ComboBox ID=&quot;cb_city&quot; runat=&quot;server&quot; Width=&quot;150px&quot; AutoHighlight=&quot;false&quot; AutoComplete=&quot;true&quot; AutoFilter=&quot;true&quot; DataValueField=&quot;ID&quot; DataTextField=&quot;NAME&quot; CssClass=&quot;comboBox&quot; HoverCssClass=&quot;comboBoxHover&quot; FocusedCssClass=&quot;comboBoxHover&quot; TextBoxCssClass=&quot;comboTextBox&quot; DropDownCssClass=&quot;comboDropDown&quot; ItemCssClass=&quot;comboItem&quot; ItemHoverCssClass=&quot;comboItemHover&quot; SelectedItemCssClass=&quot;comboItemSelect&quot; DropHoverImageUrl=&quot;../App_Themes/Default/images/combox/drop_hover.gif&quot; DropImageUrl=&quot;../App_Themes/Default/images/combox/drop.gif&quot; TextBoxEnabled=&quot;false&quot; /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;/asp:PlaceHolder&gt; &lt;/Content&gt; &lt;/ComponentArt:CallBack&gt; &lt;/td&gt;后台: protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (!Grid_List.IsCallback &amp;&amp; !CallBack_Serch.IsCallback) { showProvince(); enabledCity(); } } } /// &lt;summary&gt; /// 根据省来判断市是否禁用 /// &lt;/summary&gt; private void enabledCity() { if (cb_province.SelectedValue == &quot;-1&quot;) { cb_city.SelectedValue = &quot;-1&quot;; cb_city.Enabled = false; } else { cb_city.Enabled = true; } } /// &lt;summary&gt; /// 显示省 /// &lt;/summary&gt; private void showProvince() { cb_province.Items.Clear(); ObjModelDataSource&lt;SHSYS_T_COMM_PROVINCE&gt; objCity = new ObjModelDataSource&lt;SHSYS_T_COMM_PROVINCE&gt;(); objCity.AddCandidate(SHSYS_T_COMM_PROVINCE.Col_ID, SHSYS_T_COMM_PROVINCE.Col_NAME); DataSet ds = objCity.DataObjectSource; DataRow row = ds.Tables[0].NewRow(); row[SHSYS_T_COMM_PROVINCE.Col_ID] = &quot;-1&quot;; row[SHSYS_T_COMM_PROVINCE.Col_NAME] = &quot;--请选择省--&quot;; ds.Tables[0].Rows.InsertAt(row, 0); cb_province.DataSource = ds; cb_province.DataBind(); cb_province.SelectedIndex = 0; } /// &lt;summary&gt; /// 显示市 /// &lt;/summary&gt; /// &lt;param name=&quot;provinceId&quot;&gt;&lt;/param&gt; private void showCity(string provinceId) { enabledCity(); cb_city.Items.Clear(); string filter = string.Format(SHSYS_T_COMM_CITY.Col_PROVINCE + &quot;='{0}'&quot;, provinceId); ObjModelDataSource&lt;SHSYS_T_COMM_CITY&gt; objCity = new ObjModelDataSource&lt;SHSYS_T_COMM_CITY&gt;(filter); objCity.AddCandidate(SHSYS_T_COMM_CITY.Col_ID, SHSYS_T_COMM_CITY.Col_NAME); DataSet ds = objCity.DataObjectSource; DataRow row = ds.Tables[0].NewRow(); row[SHSYS_T_COMM_CITY.Col_ID] = &quot;-1&quot;; row[SHSYS_T_COMM_CITY.Col_NAME] = &quot;--请选择市区--&quot;; ds.Tables[0].Rows.InsertAt(row, 0); cb_city.DataSource = ds; cb_city.DataBind(); cb_city.SelectedIndex = 0; } //目的地:省与市的联动 protected void callback_goalAddress_Callback(object sender, ComponentArt.Web.UI.CallBackEventArgs e) { string js = string.Empty; string[] parameter = e.Parameters; switch (parameter[0]) { case &quot;showCity&quot;: showCity(parameter[1]); break; default: break; } ph_goalAddress.RenderControl(e.Output); if (!string.IsNullOrEmpty(js)) { e.Output.Write(js); } }方法2(只是动的那部分用callback): //根据装货地省的变化显示市 function showLoadCity(sender, eventArgs) { callback_loadAddress.Callback(&quot;showLoadCity&quot;, sender.getSelectedItem().get_value()); } &lt;td align=&quot;right&quot; nowrap class=&quot;tdWidth&quot;&gt; 装货地: &lt;/td&gt; &lt;td&gt; &lt;ComponentArt:ComboBox ID=&quot;cb_loadProvince&quot; runat=&quot;server&quot; Width=&quot;150px&quot; AutoHighlight=&quot;false&quot; AutoComplete=&quot;true&quot; AutoFilter=&quot;true&quot; DataValueField=&quot;ID&quot; DataTextField=&quot;NAME&quot; CssClass=&quot;comboBox&quot; HoverCssClass=&quot;comboBoxHover&quot; FocusedCssClass=&quot;comboBoxHover&quot; TextBoxCssClass=&quot;comboTextBox&quot; DropDownCssClass=&quot;comboDropDown&quot; ItemCssClass=&quot;comboItem&quot; ItemHoverCssClass=&quot;comboItemHover&quot; SelectedItemCssClass=&quot;comboItemSelect&quot; DropHoverImageUrl=&quot;../App_Themes/Default/images/combox/drop_hover.gif&quot; DropImageUrl=&quot;../App_Themes/Default/images/combox/drop.gif&quot; TextBoxEnabled=&quot;false&quot;&gt; &lt;ClientEvents&gt; &lt;Change EventHandler=&quot;showLoadCity&quot; /&gt; &lt;/ClientEvents&gt;后台:加载方法: showProvince(cb_loadProvince); enabledCity(cb_loadProvince, cb_loadCity); /// &lt;summary&gt; /// 根据省来判断市是否禁用 /// &lt;/summary&gt; private void enabledCity(ComboBox cb_province, ComboBox cb_city) { if (cb_province.SelectedValue == &quot;-1&quot;) { cb_city.SelectedIndex = 0; cb_city.Enabled = false; } else { cb_city.Enabled = true; } } /// &lt;summary&gt; /// 显示省 /// &lt;/summary&gt; private void showProvince(ComboBox cb_province) { cb_province.Items.Clear(); ObjModelDataSource&lt;SHSYS_T_COMM_PROVINCE&gt; objCity = new ObjModelDataSource&lt;SHSYS_T_COMM_PROVINCE&gt;(); objCity.AddCandidate(SHSYS_T_COMM_PROVINCE.Col_ID, SHSYS_T_COMM_PROVINCE.Col_NAME); DataSet ds = objCity.DataObjectSource; DataRow row = ds.Tables[0].NewRow(); row[SHSYS_T_COMM_PROVINCE.Col_ID] = &quot;-1&quot;; row[SHSYS_T_COMM_PROVINCE.Col_NAME] = &quot;--请选择省--&quot;; ds.Tables[0].Rows.InsertAt(row, 0); cb_province.DataSource = ds; cb_province.DataBind(); cb_province.SelectedIndex = 0; } /// &lt;summary&gt; /// 显示市 /// &lt;/summary&gt; /// &lt;param name=&quot;provinceId&quot;&gt;&lt;/param&gt; private void showCity(ComboBox cb_province, ComboBox cb_city, string provinceId) { enabledCity(cb_province, cb_city); cb_city.Items.Clear(); string filter = string.Format(SHSYS_T_COMM_CITY.Col_PROVINCE + &quot;='{0}'&quot;, provinceId); ObjModelDataSource&lt;SHSYS_T_COMM_CITY&gt; objCity = new ObjModelDataSource&lt;SHSYS_T_COMM_CITY&gt;(filter); objCity.AddCandidate(SHSYS_T_COMM_CITY.Col_ID, SHSYS_T_COMM_CITY.Col_NAME); DataSet ds = objCity.DataObjectSource; DataRow row = ds.Tables[0].NewRow(); row[SHSYS_T_COMM_CITY.Col_ID] = &quot;-1&quot;; row[SHSYS_T_COMM_CITY.Col_NAME] = &quot;--请选择市区--&quot;; ds.Tables[0].Rows.InsertAt(row, 0); cb_city.DataSource = ds; cb_city.DataBind(); cb_city.SelectedIndex = 0; } //装货地:省与市的联动 protected void callback_loadAddress_Callback(object sender, ComponentArt.Web.UI.CallBackEventArgs e) { string[] parameter = e.Parameters; switch (parameter[0]) { case &quot;showLoadCity&quot;: showCity(cb_loadProvince, cb_loadCity, parameter[1]); break; default: break; } ph_loadAddress.RenderControl(e.Output); } &lt;/ComponentArt:ComboBox&gt; &lt;/td&gt; &lt;td&gt; — &lt;/td&gt; &lt;td&gt; &lt;ComponentArt:CallBack ID=&quot;callback_loadAddress&quot; runat=&quot;server&quot; PostState=&quot;true&quot; OnCallback=&quot;callback_loadAddress_Callback&quot;&gt; &lt;Content&gt; &lt;asp:PlaceHolder ID=&quot;ph_loadAddress&quot; runat=&quot;server&quot;&gt; &lt;ComponentArt:ComboBox ID=&quot;cb_loadCity&quot; runat=&quot;server&quot; Width=&quot;150px&quot; AutoHighlight=&quot;false&quot; AutoComplete=&quot;true&quot; AutoFilter=&quot;true&quot; DataValueField=&quot;ID&quot; DataTextField=&quot;NAME&quot; CssClass=&quot;comboBox&quot; HoverCssClass=&quot;comboBoxHover&quot; FocusedCssClass=&quot;comboBoxHover&quot; TextBoxCssClass=&quot;comboTextBox&quot; DropDownCssClass=&quot;comboDropDown&quot; ItemCssClass=&quot;comboItem&quot; ItemHoverCssClass=&quot;comboItemHover&quot; SelectedItemCssClass=&quot;comboItemSelect&quot; DropHoverImageUrl=&quot;../App_Themes/Default/images/combox/drop_hover.gif&quot; DropImageUrl=&quot;../App_Themes/Default/images/combox/drop.gif&quot; TextBoxEnabled=&quot;false&quot; /&gt; &lt;/asp:PlaceHolder&gt; &lt;/Content&gt; &lt;/ComponentArt:CallBack&gt; &lt;/td&gt;</textarea>

 

 

绑定枚举:

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

 

年龄的绑定:

<textarea class="c-sharp" rows="15" cols="50" name="code">页面的comboBox: &lt;ComponentArt:ComboBox ID=&quot;com_AGE&quot; runat=&quot;server&quot; AutoHighlight=&quot;false&quot; AutoComplete=&quot;true&quot; AutoFilter=&quot;true&quot; CssClass=&quot;comboBox&quot; HoverCssClass=&quot;comboBoxHover&quot; FocusedCssClass=&quot;comboBoxHover&quot; DataValueField=&quot;INVITECODE&quot; DataTextField=&quot;GOALTYPE&quot; TextBoxCssClass=&quot;comboTextBox&quot; DropDownCssClass=&quot;comboDropDown&quot; ItemCssClass=&quot;comboItem&quot; ItemHoverCssClass=&quot;comboItemHover&quot; SelectedItemCssClass=&quot;comboItemSelect&quot; DropHoverImageUrl=&quot;../../App_Themes/Default/images/combox/drop_hover.gif&quot; DropImageUrl=&quot;../../App_Themes/Default/images/combox/drop.gif&quot; Width=&quot;150&quot; DropDownHeight=&quot;230&quot; DropDownWidth=&quot;155&quot; TextBoxEnabled=&quot;false&quot;&gt; &lt;/ComponentArt:ComboBox&gt;后台: protected void age() { com_AGE.Items.Clear(); for (int i = 15; i &lt;= 80; i++) { com_AGE.Items.Add(new ComponentArt.Web.UI.ComboBoxItem(i.ToString())); } }</textarea>

 

 

comboBox与textbox的联动

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

 

 

comboBox绑定树:

<textarea class="c-sharp:collapse" rows="15" cols="50" name="code">//树的异步加载//前台:只能写一句话,否则读不出来了&lt;%@ Page Language=&quot;C#&quot; AutoEventWireup=&quot;true&quot; CodeBehind=&quot;TreeViewUrl.aspx.cs&quot; Inherits=&quot;YC.SH.WEB.Car.TreeViewUrl&quot; ContentType=&quot;text/xml&quot; %&gt;//后台:using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using YC.SH.SM;//应用的类型(表)using YC.SH.Car;using YC.SH.Gps;using YC.SH.CT;using YC.DB.DataSource;//公司自己封装的库using ComponentArt.Web.UI;//第三方控件namespace YC.SH.WEB.Car{ public partial class TreeViewUrl : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { ComponentArt.Web.UI.TreeView TreeView1 = new ComponentArt.Web.UI.TreeView(); string parentID = Request.QueryString[&quot;parentID&quot;];//条件 string chlidType = Request.QueryString[&quot;chlidType&quot;];//多个接口 string userID = &quot;&quot;; if (Request.QueryString[&quot;userID&quot;] != null) { userID = Request.QueryString[&quot;userID&quot;]; } switch (chlidType) { case &quot;24&quot;: ObjModelDataSource&lt;T_INTARNEL_CUSTOMER_TYPE&gt; nsource = new ObjModelDataSource&lt;T_INTARNEL_CUSTOMER_TYPE&gt;(DataSourceType.全部读取); nsource.AddCandidate(T_INTARNEL_CUSTOMER_TYPE.Col_CUSTOMERTYPEID, T_INTARNEL_CUSTOMER_TYPE.Col_CUSTOMERTYPE); nsource.OrderStr = string.Format(&quot;{0} asc&quot;, T_INTARNEL_CUSTOMER_TYPE.Col_SORT); foreach (DataRow dept in nsource.DataObjectSource.Tables[0].Rows) { TreeViewNode node = new TreeViewNode(); node.Text = dept[T_INTARNEL_CUSTOMER_TYPE.Col_CUSTOMERTYPE].ToString(); node.ImageUrl = &quot;company1.png&quot;; node.ToolTip = &quot;内部业务&quot;; node.ExpandedImageUrl = &quot;company2.png&quot;; node.Value = string.Format(&quot;{0},{1}&quot;, dept[T_INTARNEL_CUSTOMER_TYPE.Col_CUSTOMERTYPEID], &quot;0&quot;); string url = string.Format(&quot;../TreeViewUrl.aspx?parentID={0}&amp;chlidType=25&quot;, Server.UrlEncode(dept[T_INTARNEL_CUSTOMER_TYPE.Col_CUSTOMERTYPEID].ToString())); node.Selectable = false; node.ContentCallbackUrl = url; TreeView1.Nodes.Add(node); } Response.Write(TreeView1.GetXml()); break;case &quot;25&quot;: ObjModelDataSource&lt;T_INTARNEL_CUSTOMERS&gt; nbsource = new ObjModelDataSource&lt;T_INTARNEL_CUSTOMERS&gt;(DataSourceType.全部读取); nbsource.AddCandidate(T_INTARNEL_CUSTOMERS.Col_CUSTOMERID, T_INTARNEL_CUSTOMERS.Col_CUSTOMERNAME); nbsource.FilterStr = string.Format(&quot;{0}='{1}'&quot;, T_INTARNEL_CUSTOMERS.Col_UNROOTCLASSIFY, parentID); foreach (DataRow mod in nbsource.DataObjectSource.Tables[0].Rows) { ComponentArt.Web.UI.TreeViewNode node = new ComponentArt.Web.UI.TreeViewNode(); node.Text = mod[T_INTARNEL_CUSTOMERS.Col_CUSTOMERNAME].ToString(); node.Value = string.Format(&quot;{0},{1}&quot;, mod[T_INTARNEL_CUSTOMERS.Col_CUSTOMERID].ToString(), &quot;0&quot;); node.Expanded = false; node.ImageUrl = &quot;dept1.png&quot;; node.ToolTip = &quot;内部业务&quot;; node.ExpandedImageUrl = &quot;dept2.png&quot;; TreeView1.Nodes.Add(node); } Response.Write(TreeView1.GetXml()); break;}</textarea>

 

comboBox绑定固定内容的树

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

 

comboBox绑定不固定的树

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

 

树的事件绑定动态的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;
        }


 

 

 

 

你可能感兴趣的:(ComponentArt:ComboBox 绑定值的方法)