Для ComboBox, когда я устанавливаю SelectionLength = 0, я получаю ошибку:
InvalidArgument=Value of '-1470366488' is not valid for 'start'.
Parameter name: start
Stack Trace:
at System.Windows.Forms.ComboBox.Select(Int32 start, Int32 length)
at System.Windows.Forms.ComboBox.set_SelectionLength(Int32 value)
at MyCompany.Odin.WebClient.STComplexView.loadViewFormats()
Это не после Clear()
и не является связанным элементом управления.
(Не очень) интересные вещи в этом коде:
//Adding Items to the combo box (6 in total)
// ...
viewFormatComboBox.Items.Add(appResMgr.GetString("STR_6X2_HEXAXIAL"));
viewFormatComboBox.SelectedIndex = 2;
viewFormatComboBox.SelectionLength = 0; //<<<< The exception is thrown here
Нигде в нашем коде мы не указываем SelectionStart, но он уже получил значение -1470366488, когда добираюсь до кода, который я включил выше. Я предполагаю, что это используется, когда ComboBox делает
ComboBox.Select(Int32 start, Int32 length)
вызов, вызванный установкой SelectionLength. Я предполагаю, что SelectionStart используется для аргумента начала и альта, у нас есть показ InvalidExceptionArgument выше.
Это в отладочном коде. Стиль DropDownStyle
, все остальное выглядит непримечательным, но в отладчике я вижу, что свойство SelectionStart
равно -1470366488.
Этот код существует уже несколько лет, и сегодня я впервые столкнулся с этим исключением при тестировании отладочной сборки. Я выбираю элемент, который нужно отобразить со строкой SelectedIndex = 2, затем получаю исключение при настройке SelectionLength
Есть объяснения?