如何获取datalist的footer里的控件的值?

cockroach_811123 2006-11-29 11:15:34
如何获取datalist的footer里的控件的值?
我用的是asp.net 2.0。
...全文
93 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
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)。
rickjelly2004 2006-11-29
  • 打赏
  • 举报
回复
table.rows(得到的行).cells(那一列)
那一列正常是0,因为footer就一列
rickjelly2004 2006-11-29
  • 打赏
  • 举报
回复
把DataList1.controls(0) 转化成table,
table第一行是DataList1的head
依次向下,找到footer市第几行

然后
table.rows(得到的行).cells(那一列)
cockroach_811123 2006-11-29
  • 打赏
  • 举报
回复
我要在某个按钮点击的时候获取
这样只能在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)
{

}
}
}
Html 5 标签(按照英文字母a~z顺序排列): 1、 定义注释。 2、 定义文档类型。 3、 定义超链接。 4、 定义缩写。 5、
定义地址元素。 6、 定义图像映射中的区域。 7、
定义外部的内容。 8、