在DataGrid中嵌入服务器控件,你可以这样来绑定数据:
<ItemTemplate>
<asp:label id="abc" runat="server" Text='<%# DataBinder.Eval(Container, "mydata") %>'></asp:label>
<ItemTemplate>
<ItemTemplate>
<asp:label id="abc" runat="server" Text='<%# DataBinder.Eval(Container, "mydata") %>'></asp:label>
<ItemTemplate>
解决方案 »
- 伪靓态页面缓存问题
- 使用Repeater控件onitemcommand事件 页面样式出错问题
- 关于页面传值的问题
- FCK在线编辑器的问题~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- 在同一相CS文件的不同事件或方法中如何共享变量?
- 关于图片的存和取的问题
- 没办法,还要问,请看我得javacript的角码怎么不执行呀
- 用验证控件如何实现这样的验证方式:当不输入时不验证,输入时,验证输入的内容是否符合要求?
- 如何使用<input type="file">取得文件.
- 在VS.NET下发,关于DataGrid和RadioList的问题,请大家帮帮忙.非常急啊,谢谢.
- 问题:页面传送什么东西?
- 用C#做一个WindowsApplication程序的入口在哪?
For i = 0 To DataGrid1.Items.Count - 1
Dim l As Label
l = DataGrid1.Items(i).Cells(9).FindControl("lbl")
l.Text = "xxx"
Next
If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
Dim l As Label
l = e.Item.Cells(9).FindControl("lbl")
l.Text = "xxx"
End If End Sub
祝你成功!!!!!!!
public void Dgd_ItemDataBound(Object sender, DataGridItemEventArgs e)
{
Label lbl=(Label)e.Item.FindControl("abc");
if(!(lbl == null) )//注意:一定要加上这句
{
lbl.Text="abcd";
}
}
同时你可以使用2中方法来调用你的控件
1:
DataGrid1.Items(i).Cells(9).FindControl("lbl")
2:
DataGrid1.Items(i).Cells(9).Controls[1]
因为,在Page_Load中,那段代码是找不到DataGrid中那个Label控件的。
你可以这样试试:
private void Page_Load(object sender, System.EventArgs e)
{
Label lbl=(Label)Dgd.FindControl("abc");
if(lbl!= null)
{
Response.Write("找到控件!");
}
else
{
Response.Write("没有找到控件!");
}
}