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

程序错误,盼高手解决!
未将对象引用设置到对象的实例。  
说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。  

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

源错误:  


行   55:                           for   (int   i   =   0;   i   <   names.Length;   i++)
行   56:                           {
行   57:                                   ChType.Items.FindByValue(names[i]).Selected   =   true;
行   58:                           }
行   59:  

出错代码如下:
string   shootType   =   dr[ "ShootCategory "].ToString();
                        string[]   names;
                        names   =   shootType.Split( '| ');
                        for   (int   i   =   0;   i   <   names.Length;   i++)
                        {
                                ChType.Items.FindByValue(names[i]).Selected   =   true;
                        }

                        string   photoMath   =   dr[ "Equipment "].ToString();
                        names   =   photoMath.Split( '| ');
                        for   (int   i   =   0;   i   <   names.Length;   i++)
                        {
                                this.ChMath.Items.FindByValue(names[i]).Selected   =   true;
                        }


------解决方案--------------------
ChType.Items.FindByValue(names[i])
应该就是items里面没有names[i]这个值
------解决方案--------------------
楼上正解

if(ChType.Items.FindByValue(names[i]) is XXXX)
{
((XXXX)ChType.Items.FindByValue(names[i])).Selected = true

}