首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

ASP.NET 中 按钮 单击事件 访问 GridView控件中的模板字段的有关问题。

2012-01-31 
ASP.NET 中 按钮 单击事件 访问 GridView控件中的模板字段的问题。。。。。。。。。。。。。btn_Click事件:....for(inti

ASP.NET 中 按钮 单击事件 访问 GridView控件中的模板字段的问题。。。。。。。。。。。。。
btn_Click事件:

....
for   (int   i   =   0;   i   <   GridView1.Rows.Count;   i++)
{
        TextBox   quantity   =   (TextBox)this.GridView1.Rows[i].FindControl( "txtQuantity ");

        this.Label1.Text   =   quantity.Text;
                       
}

.....

当单击按钮时,出现如下错误:

异常详细信息:   System.NullReferenceException:   未将对象引用设置到对象的实例。

错误指向:     this.Label1.Text   =   quantity.Text;     这段代码。

不知是什么原因??

     


[解决办法]
看看TextBox quantity = (TextBox)this.GridView1.Rows[i].FindControl( "txtQuantity ");
这句以后的quantity 的值是不是null
[解决办法]
TextBox quantity = (TextBox)this.GridView1.Rows[i].FindControl( "txtQuantity ");
===========
这里findcontrol出来的为null,就会出现异常
由于用了模板列,在btn_Click事件以前要重新绑定一下数据才能取得到值
[解决办法]
没有判断ROWS的类型吧?
[解决办法]
估计i == 0的时候就会出错

因为这是头,而头只是个字符串而已

所以你进行处理的时候还要进行判断
[解决办法]
wxndiablo(刺客)已经说了。
[解决办法]
不是Rows的类型,是Row的类型。
[解决办法]
if (e.Row.RowType == DataControlRowType.DataRow)
{
}
if (e.Row.RowType == DataControlRowType.Header)
{

}

热点排行