Je l'ai déjà dit et je le répète, les exemples les plus simples pour WPF sont également les plus difficiles à trouver sur le Web :)
J'ai une liste déroulante que je dois afficher, mais elle n'a pas besoin d'être databound ni quoi que ce soit d'autre, le contenu est statique. Comment puis-je ajouter une liste statique d'éléments à ma liste déroulante à l'aide de XAML?
Voici le code de MSDN et le lien - Article Link , que vous devriez vérifier pour plus de détails.
<ComboBox Text="Is not open">
<ComboBoxItem Name="cbi1">Item1</ComboBoxItem>
<ComboBoxItem Name="cbi2">Item2</ComboBoxItem>
<ComboBoxItem Name="cbi3">Item3</ComboBoxItem>
</ComboBox>
Comme ça:
<ComboBox Text="MyCombo">
<ComboBoxItem Name="cbi1">Item1</ComboBoxItem>
<ComboBoxItem Name="cbi2">Item2</ComboBoxItem>
<ComboBoxItem Name="cbi3">Item3</ComboBoxItem>
</ComboBox>
Vous pouvez également ajouter des éléments dans le code:
cboWhatever.Items.Add("SomeItem");
En outre, vous pouvez le faire pour ajouter quelque chose pour lequel vous contrôlez l'affichage/la valeur ((presque catégoriquement nécessaire dans mon expérience)). J'ai trouvé une bonne référence de stackoverflow ici:
Combobox Paire Valeur/Valeur dans WPF
Le code de synthèse pourrait ressembler à ceci:
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"));
<ComboBox Text="Something">
<ComboBoxItem Content="Item1"></ComboBoxItem >
<ComboBoxItem Content="Item2"></ComboBoxItem >
<ComboBoxItem Content="Item3"></ComboBoxItem >
</ComboBox>