以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]未将对象引用设置到对象的实例?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=18030)

--  作者:zxlid
--  发布时间:2012/3/30 23:22:00
--  [求助]未将对象引用设置到对象的实例?

代码如下(在窗口的afterload事件中):

Dim cmb1 As WinForm.ComboBox
cmb1 = e.Form.Controls("ComboBox1")
cmb1.ComboList = DataTables("政策外类型表").GetComboListString("政策外类型")
Dim cmb2 As WinForm.ComboBox = e.Form.Controls("ComboBox2")
Dim str As String = e.Form.Controls("ComboBox1").Value
cmb2.ComboList = DataTables("政策外类型表").GetComboListString("政策外具体类型", "政策外类型 = \'" & str & "\'")

出现如下错误:


图片点击可在新窗口打开查看此主题相关图片如下:111.png
图片点击可在新窗口打开查看

--  作者:程兴刚
--  发布时间:2012/3/30 23:32:00
--  
afterload事件窗口刚刚生成,还没有显示出来,您的代码也没有给e.Form.Controls("ComboBox1")赋值,仅仅是动态设置了一个列表项目,e.Form.Controls("ComboBox1"此时哪来的.Value值,此时的值为空,也就是is null,当然要报错了!


--  作者:狐狸爸爸
--  发布时间:2012/3/31 9:08:00
--  

http://www.foxtable.com/help/topics/1485.htm

 


--  作者:zxlid
--  发布时间:2012/3/31 10:02:00
--  

那如何处理较好呢


--  作者:狐狸爸爸
--  发布时间:2012/3/31 10:08:00
--  
你做个例子发上来,单单代码没有看出什么问题。
--  作者:程兴刚
--  发布时间:2012/3/31 10:17:00
--  

代码在逻辑上有问题, e.Form.Controls("ComboBox1").Value没有任何值就被引用到GetComboListString里面了!


--  作者:zxlid
--  发布时间:2012/3/31 11:10:00
--  
非常谢谢!我自己已经解决了。