问题描述
前台<asp:CheckBoxListID="CheckBoxList1"runat="server"AutoPostBack="True"></asp:CheckBoxList>
后台protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){//this.imgLoading.Visible=false;this.btnExport.Enabled=false;DataTabledt=newDataTable();this.CheckBoxList1.DataSource=dt;//这里我绑到DataTable上了.this.CheckBoxList1.DataTextField="工程师";//前台看到的值,也就是CheckBoxList中显示出来的值this.CheckBoxList1.DataValueField="Engineer_var_Name";//这个值直接在页面上是看不到的,但在源代码中可以看到this.CheckBoxList1.DataBind();}}
这样子显示未绑定,是哪里不对?求指教
解决方案
解决方案二:
publicvoidDropTable(){stringsql="droptable##tbEngtbAdroptable##tbEngtbBdroptable##tbEngtbCdroptable##tbEngtbDdroptable##tbEngtbEdroptable#tbAdroptable#tbBdroptable#tbCdroptable#tbDdroptable#tbEdroptable#temTBdroptable#temTB_EOCdroptable#temTB_JHdroptable#temTB_jbazdroptable#temTB_jheocdroptable#temTB_jhlandroptable#temTB_gxrhdroptable#tmpSUM";try{DBHelper.GetScalar(sql);}catch(Exception){}}#region数据查询protectedvoidbtnQuery_Click(objectsender,EventArgse){if(this.ftstart.Text==""||this.ftend.Text==""){Response.Write("<script>alert('时间选项不为空!');</script>");}else{this.btnQuery.Text="正在查询";BindData(this.ftstart.Text.Trim()+"00:00:00",this.ftend.Text.Trim().Trim()+"23:59:59");this.btnQuery.Text="查询";this.btnExport.Enabled=true;}}#endregion#region拼装链接字符串()privatestringAssemblyHref(stringdept1,stringdept2,stringdept3,stringname,stringftstart,stringftend,intnet,intsource,stringsuper,intservicetype,intresult,stringengineer){stringstrHref="http://192.168.24.141/WorkTicket/frmWTCommonList.aspx?wtstatus=8&dept1="+dept1+"&dept2="+dept2+"&dept3="+dept3+"&timetype=2&iscc=0&ftstart="+ftstart+"&ftend="+ftend+"&net="+net+"&source="+source+"&super="+super+"&sub=0&servicetype="+servicetype+"&result="+result+"&engineer="+engineer+"";return"<ahref=""+strHref+"">"+name+"</a>";}#endregionprivatestringassembly(stringftstart,stringftend,stringdept1,stringdept2,stringdept3,intservicetype,intnet,intiscc,inttimetype,inthasbusiness,intbsresult,stringengineer,stringname){stringstrHref="http://192.168.24.141/WorkTicket/frmWTCommonList.aspx?&ftstart="+ftstart+"&ftend="+ftend+"&dept1="+dept1+"&dept2="+dept2+"&dept3="+dept3+"&servicetype="+servicetype+"&net="+net+"&iscc="+iscc+"&timetype="+timetype+"&hasbusiness="+hasbusiness+"&bsresult="+bsresult+"&engineer="+engineer+"";return"<ahref=""+strHref+"">"+name+"</a>";}#region数据绑定privatevoidBindData(stringftstart,stringftend){DropTable();stringsql="execproc_Report_AZWH@FileTimeStart=N'"+ftstart+"',@FileTimeEnd=N'"+ftend+"'";stringconnection=ConfigurationManager.ConnectionStrings["conString"].ToString();SqlConnectioncon=newSqlConnection(connection);con.Open();SqlCommandcmd=newSqlCommand(sql,con);cmd.CommandTimeout=0;SqlDataReaderdr=cmd.ExecuteReader();DataTabledt=newDataTable();dt.Columns.Add("工程师");dt.Columns.Add("模拟");dt.Columns.Add("基本");StringBuildersb=newStringBuilder();sb.Append("<tr><tdrowspan='2'></td><tdcolspan='5'style='text-align:center'>维修</td><tdcolspan='12'>安装</td><tdcolspan='1'></td></tr>");sb.Append("<tr><tdcolspan='2'>模拟+基本</td><tdcolspan='3'>交互+宽带</td><tdcolspan='6'>LAN+EOC</td><tdcolspan='1'></td><tdcolspan='1'>基本</td><tdcolspan='4'></td><tdcolspan='1'>服务申告流</td></tr>");sb.Append("<tr><td>工程师</td><td>模拟</td><td>基本</td><td>移动宽带</td><td>广电宽带</td><td>交互维修</td><td>移动宽带LAN安装</td><td>广电宽带LAN安装</td><td>交互LAN</td><td>移动宽带EOC安装</td><td>广电宽带EOC安装</td><td>交互EOC</td><td>光纤入户</td><td>基本型安装</td><td>开机</td><td>销户</td><td>移动宽带拆机</td><td>交互拆机</td><td>服务申告流</td></tr>");while(dr.Read()){DataRowrow=dt.NewRow();row[0]=dr["Engineer_var_Name"].ToString();row[1]=dr["模拟"].ToString();row[2]=dr["基本"].ToString();sb.Append("<tr>");sb.Append("<td>"+dr["Engineer_var_Name"]+"</td>");sb.Append("<td>"+AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(),dr["WorkTicket_int_Dept2"].ToString(),dr["WorkTicket_int_Dept3"].ToString(),dr["模拟"].ToString(),""+ftstart+"",""+ftend+"",0,5,"501",1,3,dr["Engineer_int_ID"].ToString())+"</td>");sb.Append("<td>"+AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(),dr["WorkTicket_int_Dept2"].ToString(),dr["WorkTicket_int_Dept3"].ToString(),dr["基本"].ToString(),""+ftstart+"",""+ftend+"",0,5,"502",1,3,dr["Engineer_int_ID"].ToString())+"</td>");ResultData=sb.ToString();this.GVData.DataSource=dt;//gridview数据绑定this.GVData.DataBind();dr.Close();con.Close();btnQuery.Enabled=true;
解决方案三:
上面是我的代码
解决方案四:
调试看看,你的datatable有哪些字段,发出来看看。
解决方案五:
protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){//this.imgLoading.Visible=false;this.btnExport.Enabled=false;DataTabledt=newDataTable();this.CheckBoxList1.DataSource=dt;//这里我绑到DataTable上了.this.CheckBoxList1.DataTextField="工程师";//前台看到的值,也就是CheckBoxList中显示出来的值this.CheckBoxList1.DataValueField="Engineer_var_Name";//这个值直接在页面上是看不到的,但在源代码中可以看到this.CheckBoxList1.DataBind();}}
Page_Load加载的时候DataTabledt=newDataTable();new一个DataTable();dt就是没有值没有值就是未绑定很正常啊如果要有值你要赋值给td