调用combox的值

sanfanaiyan 2012-06-13 01:01:38
窗体1和窗体2
第一个问题:
窗体1中有comobox1和comboox2,两个控件集合都为:1,2,3.控件初始值为空;点击下一步时对comobox控件进行判断。
窗体1程序代码:
private void 下一步_Click(object sender, EventArgs e)
{
if ((comobox1.Text == null)|(comboox2.Text == null))
{
MessageBox.Show("请输入值!", "错误提示");
}
else
{
窗体2 obj = new 机器型式选择();
obj.Show();
this.Hide();
}
}
comobox的值为空,我运行程序后,messagebox没有显示而是直接进去窗体2。不知道是什么原因?
第二个问题:
comobox选择都为1后,在点击下一步后,进入窗体2我调用窗体1的comobox值.
代码:
public 窗体1 m_dyb;
if(Convert.ToSingle(m_dyb.comobox1.Text)==1)
{.....}
运行程序后报错:未将对象引用设置到对象的实例。
偶未找到问题和解决的办法,望各位高手不吝赐教,小弟在此先拜谢了!
...全文
131 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
mingcsharp 2012-06-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

string.IsNullOrEmpty(comobox1.Text),这么判断,null和""是两码事
[/Quote]

正解
sanfanaiyan 2012-06-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

第一個comobox1.Text為""
第二個m_dyb.comobox1不存在
[/Quote]
请问如何解决这个问题,谢谢!
cnfixit 2012-06-13
  • 打赏
  • 举报
回复
1、
comobox1.Text == null
===>
string.IsNullOrEmpty(comobox1.Text)
2、你虽然在窗体2里面声明了一个窗体里的实例m_dyb,但是这个m_dyb和你前面显示的窗体1不是一个,你可以通过窗体2的构造函数把窗体1的实例传过去,比如:
class 窗体2
{
窗体1 _m_dyb;
public 窗体1(窗体1 m_dyb)
{
this._m_dyb = m_dyb;
_m_dyb.comobox1.Text = "xxxx";
}
}

---------------
else//实例化时
{

窗体2 obj = new 机器型式选择(this);
obj.Show();
this.Hide();
bdmh 2012-06-13
  • 打赏
  • 举报
回复
string.IsNullOrEmpty(comobox1.Text),这么判断,null和""是两码事
人生无悔 2012-06-13
  • 打赏
  • 举报
回复
第一個comobox1.Text為""
第二個m_dyb.comobox1不存在

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧