chkExport = oDataGridItem.FindControl("chkExport")
不知道vb.net的语法是不是允许隐式转换。反正c#是应该这样的:
chkExport = (System.Web.UI.WebControls.CheckBox)oDataGridItem.FindControl("chkExport");
因为FindControl方法返回的是Control类,你必须显式转换(上溯造型)。
不知道vb.net的语法是不是允许隐式转换。反正c#是应该这样的:
chkExport = (System.Web.UI.WebControls.CheckBox)oDataGridItem.FindControl("chkExport");
因为FindControl方法返回的是Control类,你必须显式转换(上溯造型)。
dim checkbox1 as checkbox=e.Item.Cells(模板所在的列数).Controls(1)
if checkbox1.check then
...
end if
搞定了,通知我啊[email protected],谢谢了
For Each oDataGridItem In datagrid.Items
if oDataGridItem.ItemIndex>=0 then '*******************************
chkExport = oDataGridItem.FindControl("chkExport")
if chkExport.checked then
.....
end if
end if '*****************************************
Next这里的Item其实是从-1开始的(页眉),你可以跟踪一下item.itemindex的值。
在C#中,是blackcatiii(ljh) 说的那样找控件。vb.net下应该也要转换一下吧(不肯定,你试一下)
Dim chkExport As System.Web.UI.WebControls.CheckBox
chkExport = (System.Web.UI.WebControls.CheckBox)oDataGridItem.FindControl("chkExport")
if not ispostback thenend if
中间
if(!IsPostBack)
BindGrid();
另外,用不用DataBind()都一样。
按照secondlf(风)说得就可以了~:)谢谢!