Выберите запись из выпадающего списка - PullRequest
1 голос
/ 27 апреля 2011

В моем приложении есть ComboBox.Я хочу выбрать любой индекс, кроме того, который уже выбран.

 int index = ComboBox0.SelectedIndex;
 int count = ComboBox0.Items.Count;

ComboBox0.SelectedIndex = ?

Как добиться этого без жесткого кодирования?

Ответы [ 3 ]

2 голосов
/ 27 апреля 2011

Вы можете сделать что-то вроде:

ComboBox0.SelectedIndex = (ComboBox0.SelectedIndex + 1) % ComboBox0.Count;

Это выберет следующий элемент, доступный в списке.

0 голосов
/ 27 апреля 2011

Если вам просто нужен какой-либо элемент, кроме текущего (и вы уверены, что их два), это будет работать так же, как и любой (выберите первый элемент, если в данный момент не выбран, или второй элемент, если выбран первый):

if (ComboBox0.SelectedIndex == 0) ComboBox0.SelectedIndex = 1;
else ComboBox0.SelectedIndex = 0;
0 голосов
/ 27 апреля 2011

Если вы хотите выбрать его случайным образом, вы можете использовать что-то вроде этого:

int n = (int)(random * (count - 1));
if (n < index) {
   ComboBox0.SelectedIndex = n;
} else {
   ComboBox0.SelectedIndex = n + 1;
}

где переменная будет переменной с:

random = new Random();
...