大家好,所以我遇到的问题是它在标题上(运算符"|"
无法应用于string
和string
类型的操作数
这是我目前正在运行的代码
if ( (tb_id.Text="") | (tbnome.Text = "") | (tbpreco.Text = "") | (tbquant.Text = "") )
{
MessageBox.Show("Erro, Voce não inseriu algo");
}
我真的不知道为什么会这样,我已经搜索了stackoverflow和其他网站和论坛,但仍然看不到错误。
答案 0 :(得分:9)
您希望使用等于运算符==
而不是赋值运算符=
。
赋值运算符返回分配给字符串的值,并将值赋给字符串。相等运算符返回一个布尔值,表示两个字符串是否相等。
另一方面,您几乎肯定希望使用短路OR运算符||
而不是非短路OR运算符|
,这样如果任何检查通过它就不会
答案 1 :(得分:1)
将您的代码更改为此
if ( (tb_id.Text=="") || (tbnome.Text == "") || (tbpreco.Text == "") || (tbquant.Text == "") )
{
MessageBox.Show("Erro, Voce não inseriu algo");
}
此==
是equal to
运算符
=
是一个赋值运算符。
和or
运营商||
而不是|
您可能需要阅读http://msdn.microsoft.com/en-us/library/6a71f45d.aspx