使用DataGrid.Controls查找DataGrid中服务器控件的问题
ieooo 2005-07-26 12:37:19 MSDN中提到:使用 Controls 集合管理包含在数据列表控件中的子控件。可以添加控件、移除控件或循环访问集合中的服务器控件。
但是我使用以下方法查找DataGrid中的checkbox控件时,不管DataGrid中有多个checkBox被选中,但返回的arrayList.Count值都为0(注释掉的方法时可行的,我是想弄懂Controls的含义以及用法);请大家指点.
public static ArrayList TTT(DataGrid dataGrid)
{
ArrayList arrayList = new ArrayList();
// for (int i = 0; i < dataGrid.Items.Count; i ++)
// {
// HtmlInputCheckBox chk = (HtmlInputCheckBox)dataGrid.Items[i].FindControl(id);
//
// if (chk != null && chk.Checked)
// arrayList.Add(chk.Value);
// }
foreach (object obj in dataGrid.Controls)
{
if (obj is HtmlInputCheckBox)
{
HtmlInputCheckBox chk = (HtmlInputCheckBox)obj;
if (chk.Checked)
{
arrayList.Add(chk.Value);
}
}
}
return arrayList;
}