Вопрос

Каков наилучший способ реализации опции множественного выбора в Windows Forms?Я хочу применить один выбор из списка, начиная со значения по умолчанию.

Кажется, что поле со списком было бы хорошим выбором, но есть ли способ указать непустое значение по умолчанию?
Я мог бы просто установить это в коде в какой-нибудь подходящей точке инициализации, но я чувствую, что мне чего-то не хватает.

Это было полезно?

Решение

Если вам нужен только один ответ от группы, то лучше всего подойдет элемент управления RadioButton или вы можете использовать поле со списком, если у вас будет много вариантов.Чтобы установить значение по умолчанию, просто добавьте элемент в коллекцию ComboBox и установите SelectedIndex или SelectedItem для этого элемента.

В зависимости от того, сколько вариантов вы просматриваете, вы можете использовать ListBox со свойством SelectionMode, для которого установлено значение MultiSimple, если это будет множественный выбор, или вы могли бы использовать элемент управления CheckBox.

Другие советы

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

http://msdn.microsoft.com/en-us/library/system.windows.forms.combobox.selectedindex.aspx

Используйте Поле со списком.Выбранный элемент или Выбранный индекс свойство после того, как элементы были вставлены, чтобы выбрать элемент по умолчанию.

Вы также могли бы рассмотреть возможность использования РадиоКнопка элемент управления для принудительного выбора одного параметра.

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

Если вы предоставляете пользователю небольшой список вариантов, то придерживайтесь переключателей.Однако, если вы захотите, используйте поле со списком для динамических или длинных списков.Установите стиль в DropDownList.

private sub populateList( items as List(of UserChoices))
   dim choices as UserChoices
   dim defaultChoice as UserChoices 

   for each choice in items
      cboList.items.add(choice)
      '-- you could do user specific check or base it on some other 
      '---- setting to find the default choice here
      if choice.state = _user.State or choice.state = _settings.defaultState then 
          defaultChoice = choice
      end if 
   next 
   '-- you chould select the first one
   if cboList.items.count > 0 then
      cboList.SelectedItem = cboList.item(0)
   end if 

   '-- continuation of hte default choice
   cboList.SelectedItem = defaultChoice

end sub
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top