//判断整数、小数、空 public bool IsNumericOrEmpty(string s)
{
if (s == null || s.Length == 0)
{
return true;
}
if (System.Text.RegularExpressions.Regex.IsMatch(s, @"^([1-9]\d*|[1-9]\d*.\d*|0|0.\d*)$"))
{
return true;
}
return false;
}
private void XieyiTwo_CheckedChanged(object sender, EventArgs e)
{
if(XieyiTwo.Checked)
{
ETBeizhu.Text += "单车直送";
TextBox t = sender as TextBox;
if (!IsNumericOrEmpty(t.Text))
{
t.Clear();
t.Focus();
MessageBox.Show("请输入数字或留空!", "订单系统", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
//MessageBox.Show(t.Text);
float w1;
float ws;
float dj;
dj = 3.3F; float.TryParse(ETLicheng.Text, out w1);
ws = w1 * dj;
ETPrice.Text = ws.ToString();
}
}
else
{
ETBeizhu.Text = "";
}
}
上边的代码报错:
未处理NullReferenceException
未将对象引用设置到对象的实例。
请问高手我应该怎么修改?
{
if (s == null || s.Length == 0)
{
return true;
}
if (System.Text.RegularExpressions.Regex.IsMatch(s, @"^([1-9]\d*|[1-9]\d*.\d*|0|0.\d*)$"))
{
return true;
}
return false;
}
private void XieyiTwo_CheckedChanged(object sender, EventArgs e)
{
if(XieyiTwo.Checked)
{
ETBeizhu.Text += "单车直送";
TextBox t = sender as TextBox;
if (!IsNumericOrEmpty(t.Text))
{
t.Clear();
t.Focus();
MessageBox.Show("请输入数字或留空!", "订单系统", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
//MessageBox.Show(t.Text);
float w1;
float ws;
float dj;
dj = 3.3F; float.TryParse(ETLicheng.Text, out w1);
ws = w1 * dj;
ETPrice.Text = ws.ToString();
}
}
else
{
ETBeizhu.Text = "";
}
}
上边的代码报错:
未处理NullReferenceException
未将对象引用设置到对象的实例。
请问高手我应该怎么修改?
解决方案 »
- 求一个思路,类似搜狗拼音记录用户输入习惯。
- C# 怎么样向SQL数据库插入一用户,供程序连接时用
- 如何获取excel表,SQL表中数据的类型?
- 为什么我评论了,没有积分加呢?
- C# winform Code128.Encode.Code128A为什么不支持字母,做过条形码的大叔大伯请告诉本姑娘一下,不懂哎,请求支援,谢谢!感激不尽!
- winform中如何把对话框参数传给父窗口
- 请问在C#中如何打印pictureBox中的Image啊?
- C# 怎么禁止电脑上外网
- [winform]Datagrid中CheckedBox选择问题??
- 有没有让用户自己定义报表格式的控件?
- C#中修改、添加数据问题
- C#播放器播放视频文件的问题
上报错的:
未处理NullReferenceException
未将对象引用设置到对象的实例。
可以将TextBox的Leave事件,或者TextChanged事件绑定到这个事件处理函数上
估计是这里的t为null,可能sender就不是一个TextBox
TextBox t = sender as TextBox;
这句代码有问题,t为空!
private void XieyiTwo_CheckedChanged(object sender, EventArgs e)
{
if(XieyiTwo.Checked)
{
ETBeizhu.Text += "单车直送";
TextBox t = sender as TextBox;//这里有问题,应该转不过来,所以是NULL
if(t!=null)
{
if (!IsNumericOrEmpty(t.Text))
{
}
}
}