Это немного странно, но я боролся уже несколько часов и не могу понять, что происходит.
Мне было интересно, сталкивался ли кто-нибудь еще с этой проблемой, и, возможно, может объяснить ее. Я создаю простое приложение Winforms и пытаюсь использовать многие из встроенных элементов управления.
По сути, у меня есть форма с пользовательским элементом управления и некоторыми полями для сбора данных. 3 поля - это раскрывающиеся списки, а в пользовательском элементе управления есть элемент управления bindingSource, который напрямую связан с классом Product.
Во время выполнения я предоставляю экземпляр класса Product для BindingSource, и этот класс содержит свойство ProductType
. Для простоты я также добавил List<ProductType>
ProductTypes к классу продукта, который загружается сам при запросе, что означает, что я могу просто использовать тот же связующий источник и выбрать ProductTypes
элемент данных в качестве источника данных для раскрывающегося списка.
После запуска формы список отлично связывается, и я вижу все перечисленные типы продуктов, и я могу выбрать один и вкладку или щелкнуть в следующем поле. Но очевидно, что выбранное значение не будет привязано, потому что я не выбрал для раскрывающегося списка никакие bindings-SelectedValue, а только источник данных. Как только я убедился, что раскрывающийся список изменяет экземпляр Product, связавшись с Bindings-SelectedValue, а затем запустил форму, список все равно заполняется идеально, и я могу перемещаться по элементам управления, пока я этого не сделаю. сделать выбор из выпадающего списка. Если я сделаю выбор из выпадающего списка, то выпадающий список удерживает фокус . Я не могу перейти на вкладку из-за любви или денег и даже не могу нажать кнопку «Отмена» в форме, кнопка «Закрыть» в верхнем правом углу - единственная кнопка, которую я могу нажать, которая работает, и я не могу нажать на любое другое поле или раскрывающийся список. Это влияет на все три раскрывающихся списка, как только будет сделан выбор.
У кого-нибудь есть идеи, что мне не хватает?
Я попытался изменить несколько вещей и добился некоторого успеха, передав выпадающие значения в строку [] вместо члена объекта. Кажется, это работает, но побеждает объект использования привязки данных, не так ли?
Любая помощь приветствуется!