我想比较:
ComboBox.SelectedItem,它是字符串的对象类型。空值与“ ||”组合
如果使用上述命令运行,则会出现错误:
“运算符'||'不能应用于'object'类型的操作数,并且 '布尔'“
代码
if (comboBox2.SelectedItem || comboBox1.SelectedItem == string.Empty )
答案 0 :(得分:3)
尝试一下:
if ((comboBox1.SelectedItem?.Equals(string.Empty) ?? false)
|| (comboBox2.SelectedItem?.Equals(string.Empty) ?? false))
答案 1 :(得分:1)
尝试
if((comboBox1.SelectedItem==null || comboBox1.SelectedItem == string.Empty) || (comboBox2.SelectedItem == null || comboBox2.SelectedItem == string.Empty))
{
MessageBox.Show("Select Item!");
}
答案 2 :(得分:0)
您无法比较布尔值和对象(组合框的选定项) 根据@ThierryV答案,您可以定义一个函数来检查您的状况:
private bool CheckEmptyComboBox(ComboBox comboBox)
{
return (comboBox.SelectedItem==string.Empty ?? false)
}
,然后应在if语句条件中使用此功能:
if( CheckEmptyComboBox(comboBox1) || CheckEmptyComboBox(comboBox2) || CheckEmptyComboBox(comboBox3) ...)
您还可以使用foreach语句在面板或组框中找到所有组合框