如何获取datalist的footer里的控件的值?
如何获取datalist的footer里的控件的值?
我用的是asp.net 2.0。
我用的是asp.net 2.0。
...全文
请发表友善的回复…
发表回复
cockroach_811123 2006-11-29
- 打赏
- 举报
楼上的大哥说的是datagrid里面的吧,我在datalist里面试了一下,不行……
rickjelly2004 2006-11-29
- 打赏
- 举报
DataGrid.Items集合并不包含 Header和Footer部分,但是在DataGrid.Controls集合中包含这两部分,因此用如下方法,如有不明白可以将page指令trace 设为true看一下控件树的层次关系和UniqueID:
假设DataGrid名为dg
Control table=dg.Controls[dg.Controls.Count-1];
DataGridItem item=(DataGridItem)table.Controls[table.Controls.Count-1];
这样item就是footer,类型为DataGridItem,这样引用item就可以像其它地方一样访问了,例如输出footer的第一列:
Response.Write(item.Cells[0].Text)。
假设DataGrid名为dg
Control table=dg.Controls[dg.Controls.Count-1];
DataGridItem item=(DataGridItem)table.Controls[table.Controls.Count-1];
这样item就是footer,类型为DataGridItem,这样引用item就可以像其它地方一样访问了,例如输出footer的第一列:
Response.Write(item.Cells[0].Text)。
rickjelly2004 2006-11-29
- 打赏
- 举报
table.rows(得到的行).cells(那一列)
那一列正常是0,因为footer就一列
那一列正常是0,因为footer就一列
rickjelly2004 2006-11-29
- 打赏
- 举报
把DataList1.controls(0) 转化成table,
table第一行是DataList1的head
依次向下,找到footer市第几行
然后
table.rows(得到的行).cells(那一列)
table第一行是DataList1的head
依次向下,找到footer市第几行
然后
table.rows(得到的行).cells(那一列)
cockroach_811123 2006-11-29
- 打赏
- 举报
我要在某个按钮点击的时候获取
这样只能在databound的时候能取到呀。。。
这样只能在databound的时候能取到呀。。。
wroxdo 2006-11-29
- 打赏
- 举报
在 ItemDataBound 事件 中判断一下。
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType = ListItemType.Footer)
{
TextBox tb = (TextBox)e.Item.FindControl("testCtlName");
if (tb != null)
{
}
}
}
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType = ListItemType.Footer)
{
TextBox tb = (TextBox)e.Item.FindControl("testCtlName");
if (tb != null)
{
}
}
}