在datagrid里面添加一个模板列,然后放入一个label控件,在aspx页面的html代码里面给这个label控件绑定值:
<asp:TemplateColumn HeaderText="Complete Level">
<ItemTemplate>
<asp:Label id="lbl_level" runat="server"><%# DataBinder.Eval(Container,"DataItem.task_level") %></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>然后在cs代码文件里面读取每行label的值:
System.Web.UI.WebControls.Label lbl; foreach(DataGridItem oDataGridItem in DataGrid1.Items)
{
lbl = (Label)oDataGridItem.FindControl("lbl_level");
lbl.Text += "....done";
}
上面代码就是先把label控件的值读出来,然后在当前文本后面加点文本,但是我发现里面lbl.Text的值是空的,根本读不到datagrid里面label控件的值.然后我又试验改变绑定的值为普通的值,例如<asp:TemplateColumn HeaderText="Complete Level">
<ItemTemplate>
<asp:Label id="lbl_level" runat="server"> hello world </asp:Label>
</ItemTemplate>
</asp:TemplateColumn>改为普通的值就又能读出了,数据库绑定的就读不了,请问这是为什么啊????如何解决啊??
<asp:TemplateColumn HeaderText="Complete Level">
<ItemTemplate>
<asp:Label id="lbl_level" runat="server"><%# DataBinder.Eval(Container,"DataItem.task_level") %></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>然后在cs代码文件里面读取每行label的值:
System.Web.UI.WebControls.Label lbl; foreach(DataGridItem oDataGridItem in DataGrid1.Items)
{
lbl = (Label)oDataGridItem.FindControl("lbl_level");
lbl.Text += "....done";
}
上面代码就是先把label控件的值读出来,然后在当前文本后面加点文本,但是我发现里面lbl.Text的值是空的,根本读不到datagrid里面label控件的值.然后我又试验改变绑定的值为普通的值,例如<asp:TemplateColumn HeaderText="Complete Level">
<ItemTemplate>
<asp:Label id="lbl_level" runat="server"> hello world </asp:Label>
</ItemTemplate>
</asp:TemplateColumn>改为普通的值就又能读出了,数据库绑定的就读不了,请问这是为什么啊????如何解决啊??
解决方案 »
- <object>播放图片问题,求高手指点
- asp.net如何实现对txt,word,pdf里面的内容实现全文检索
- url传递参数乱码问题
- 我给用户的web程序打包,用户使用时需要先安装msde,但是我不想让用户知道自己数据库的密码..
- 一个非常奇怪的问题,本地一切正常,上传后点击按钮不响应
- 关于回滚__doPostBack('dopostbackbtn','')出错的问题?有谁知道吗?详情请进......
- 在vs.net 2003开发WEB工程中如何使flash控件?
- 如果用脚本来动态控件iframe的width和height?
- 版主,各位高手救命,我的asp.net不工作,代码贴出来您给看看!!!
- 100分求助:批量数据保存的问题,望各位大虾指点迷津!!!
- 做过触摸屏程序的来讨论一下吧!
- 请教ado.net高手。关于SqlParameter 动态创建******问过N多的人。找过N多以前的贴子到今未得到解决。向高手求解
for(int i=0;i<this.datagrid1.Items.Count;i++)
{
Label mylab = (label)this.datagrid1.Items[i].FindControl("lbl_level");
this.response.write(mylab.Text);
}
<ItemTemplate>
<Label><%# DataBinder.Eval(Container,"DataItem.task_level")%><Label>
</ItemTemplate>
</asp:TemplateColumn>你这样试,以前我这样做是没有问题的