WPF - добавить статические элементы в поле со списком

83

Я уже говорил об этом и скажу еще раз, самые простые примеры для WPF труднее всего найти в сети :)

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

Неизвестный кодер
источник

Ответы:

132

Вот код из MSDN и ссылка - Ссылка на статью , которую вы должны проверить для получения более подробной информации.

<ComboBox Text="Is not open">
    <ComboBoxItem Name="cbi1">Item1</ComboBoxItem>
    <ComboBoxItem Name="cbi2">Item2</ComboBoxItem>
    <ComboBoxItem Name="cbi3">Item3</ComboBoxItem>
</ComboBox>
Wade73
источник
22

Как это:

<ComboBox Text="MyCombo">
<ComboBoxItem  Name="cbi1">Item1</ComboBoxItem>
<ComboBoxItem  Name="cbi2">Item2</ComboBoxItem>
<ComboBoxItem  Name="cbi3">Item3</ComboBoxItem>
</ComboBox>
Тони Лев
источник
10

Вы также можете добавлять элементы в код:

cboWhatever.Items.Add("SomeItem");

Кроме того, чтобы добавить что-то, где вы управляете отображением / значением (почти категорически необходимо, по моему опыту), вы можете сделать это. Я нашел здесь хорошую ссылку на stackoverflow:

Поле со списком пары ключевых значений в WPF

Итоговый код будет примерно таким:

ComboBox cboSomething = new ComboBox();
cboSomething.DisplayMemberPath = "Key";
cboSomething.SelectedValuePath = "Value";
cboSomething.Items.Add(new KeyValuePair<string, string>("Something", "WhyNot"));
cboSomething.Items.Add(new KeyValuePair<string, string>("Deus", "Why"));
cboSomething.Items.Add(new KeyValuePair<string, string>("Flirptidee", "Stuff"));
cboSomething.Items.Add(new KeyValuePair<string, string>("Fernum", "Blictor"));
omJohn8372
источник
2
<ComboBox Text="Something">
            <ComboBoxItem Content="Item1"></ComboBoxItem >
            <ComboBoxItem Content="Item2"></ComboBoxItem >
            <ComboBoxItem Content="Item3"></ComboBoxItem >
</ComboBox>
Ритеш Сет
источник
1
Пожалуйста, добавьте также информацию, почему ваше решение может помочь OP
milo526