Контекстное меню сбрасывает выбранный индекс ComboBox - PullRequest
1 голос
/ 09 сентября 2008

У меня есть ContextMenu, которое отображается после щелчка правой кнопкой мыши на ComboBox. Когда пользователь выбирает элемент в контекстном меню, форма вызывается методом ShowDialog().

If frmOptions.ShowDialog() = Windows.Forms.DialogResult.Cancel Then
    LoadComboBoxes()
End If

Когда эта форма закрыта, я обновляю все данные в комбинированных списках родительской формы. Однако, когда это происходит, ComboBox, открывший ContextMenu, сбрасывается, чтобы иметь выбранный индекс -1, но другие выбранные индексы других ComboBox остаются прежними.

Как предотвратить сброс ComboBox, открывшего контекстное меню?

Ответы [ 2 ]

1 голос
/ 09 сентября 2008

Один из способов справиться с этим - использовать всплывающее событие контекстного меню, чтобы получить выбранный индекс выпадающего меню. Когда диалоговая форма закрывается, сбросьте выбранный индекс.

0 голосов
/ 09 сентября 2008

Я понял это.

Я создал метод, который передал свойство ContextMenu.SourceControl () по ссылке, чтобы я мог управлять элементом управления, который вызвал ContextMenu. В начале метода я получил SelectedValue ComboBox и перезагрузил данные в ComboBox. Затем я устанавливаю SelectedValue на значение, полученное в начале метода.

Спасибо, DaveK, за то, что направили меня в правильном направлении.

...