У меня есть 1 кнопка, которая будет выполнять хранимую процедуру, на основе которой у combobox есть данные. Являются ли множественные if
заявления лучшим курсом для меня для учета каждого сценария combobox? В настоящее время у меня такой код, который работает, но немного медленный. Есть ли лучший способ написать этот синтаксис с помощью C# и VS2013?1 Кнопка 4 Comboboxes On Win Form
private void btn1_Click()
{
if (cbo1.Text.ToString() == "" && cbo2.Text.ToString() == "" && cbo3.Text.ToString() == "" && cbo4.Text.ToString() == "")
{
MessageBox.Show("You failed to make a selection.");
return;
}
if (cbo1.Text.ToString() != "" && cbo2.Text.ToString() == "" && cbo3.Text.ToString() == "" && cbo4.Text.ToString() == "")
{
//Go route1
}
if (cbo1.Text.ToString() == "" && cbo2.Text.ToString() 1= "" && cbo3.Text.ToString() == "" && cbo4.Text.ToString() == "")
{
//Go route2
}
if (cbo1.Text.ToString() == "" && cbo2.Text.ToString() == "" && cbo3.Text.ToString() != "" && cbo4.Text.ToString() == "")
{
//Go route3
}
if (cbo1.Text.ToString() == "" && cbo2.Text.ToString() == "" && cbo3.Text.ToString() == "" && cbo4.Text.ToString() != "")
{
//Go route4
}
}
EDIT
@MethodMan -> это, как вы бы идти о создании чек?
var comboBoxes = this.Controls
.OfType<ComboBox>()
.Where(x => x.Name.StartsWith("comboBox"));
foreach(var cmbBox in comboBoxes)
{
(string.IsNullOrEmpty(cmbBox.Text)) || if (cmbBox.SelectedIndex == -1)
{
//How to find which combobox is cmbBox
}
}
Как вы думаете, что этот код медленный? – LarsTech
@LarsTech - когда я его выполняю, он вялый. Вот почему я спрашиваю, есть ли лучший способ написать синтаксис. –
, вы могли бы сделать это несколькими способами, чтобы сделать его более читаемым. Я бы использовал класс .Controls для проверки элемента управления, если это комбобокс, и если свойство .Text не пустое, используя функцию string.IsNullOrEmpty. – MethodMan