vs2005中FindControl的问题
我在vs2005中使用了一个GridView其中有一模板列中用了Label
我执行如下
protected void gvHotels_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName.Equals( "ViewHotelInfo "))
{
Label hotelCode = (Label)gvHotels.FindControl( "lblCnName ");
string url = string.Format( "hotelInfo.aspx?hotelCode={0} ", hotelCode.Text.ToString());
Response.Redirect(url);
}
}
但在这儿报错:
未将对象引用设置到对象的实例,为什么找不到labCnName控件,我已加了呀.不知为什么?
------解决方案--------------------你不能直接gvHotels.FindControl这样找。
要到某个单元格找
gvHotels.Rows[1].Cells[1].FindControl();
------解决方案--------------------http://community.csdn.net/Expert/topic/5441/5441316.xml?temp=.2392237
------解决方案--------------------或者
int index = Convert.ToInt32(e.CommandArgument);
GridViewRow row = GridView1.Rows[Convert.ToInt32 (e.CommandArgument)];
row.FindControl()......
------解决方案--------------------为为什么不把html代码也帖出来呢!!