日期:2014-05-18  浏览次数:20866 次

帮帮忙
为什么在gridview中找不到控件啊?
C# code

 protected void Page_Load(object sender, EventArgs e)
    {
                   for (int i = 0; i < GridView1.Rows.Count; i++)
            {
                LinkButton LinkButton3 = (LinkButton)this.GridView1.Rows[i].Cells[4].FindControl("LinkButton3");
                if (CheckBox1.Checked)
                {
                    LinkButton3.CssClass = "show";//找不到控件,未将对象引用设置的对象的实例
                }
                else
                {
                    LinkButton3.CssClass = "hidden";
                }
            }   
    }



------解决方案--------------------
没玩过这个东东,将代码追根溯源把
------解决方案--------------------
未将对象引用设置到对象的实例。出现这种报错的主要有以下几种原因:
1、ViewState对象为Null。
2、DateSet空。
3、sql语句或Datebase的原因导致DataReader空。
4、声明字符串变量时未赋空值就应用变量。
5、未用new初始化对象。
6、Session对象为空。
7、对控件赋文本值时,值不存在。
8、使用Request.QueryString()时,所获取的对象不存在,或在值为空时未赋初始值。
9、使用FindControl时,控件不存在却没有做预处理。

给你参考下
------解决方案--------------------
10、重复定义造成未将对象引用设置到对象的实例错误.
------解决方案--------------------
仔细查一下你的LinkButton3有没有弄错?