У меня есть элемент управления сеткой инфраструктуры, который имеет два столбца: в одной из строк отображаются имена определенных настроек, а в другом - раскрывающееся меню со значениями, доступными для имени, с которым оно связано. Все значения одинаковы. Я добавил раскрывающийся список в конструкторе после его создания и добавления в элемент управления следующим образом:
Me.settingLevelDrpDown.DataSource = MyDict.ToList()
Me.settingLevelDrpDown.ValueMember = "Key"
Me.settingLevelDrpDown.DisplayMember = "Value"
В этом случае MyDict
- это Dictionary(Of MyEnum, String)
, где MyEnum
- это просто перечисление. Код, который отображает это:
settingLevelDrpDown.Visible = True
settingLevels.DisplayLayout.Bands(0).Columns(1).ValueList = settingLevelDrpDown
Пока у меня есть две проблемы:
Во-первых, когда я отображаю раскрывающийся список, я получаю таблицу с одной строкой для Key
и списком ключей enum и строкой для Value
со списком строк, которые я на самом деле хочу для отображения. Как я могу убедиться, что enum-ключи привязаны к выпадающему выбору, при этом отображая строковые значения?
Второе - производительность. Я прочитал третий раздел this и, насколько я могу судить, я не спотыкался ни по одному из перечисленных пунктов, но время загрузки очень медленное, и приложение очень сильно отстает даже после формы загружаются.
Любая помощь с этими двумя проблемами будет принята с благодарностью.