2013-01-08 11 views
10

Potrzebuję wypełnić komobox wpf ze stałą kolekcją ciągów (na przykład miesiące od stycznia do grudnia).Jak wypełnić wpf combobox w xaml

+0

gdzie masz struny? czy przechowujesz go w enum? czy robisz coś innego? – Srinivas

+1

Właśnie dodałem to pytanie, ponieważ nie jest łatwo znaleźć odpowiedź online. – synergetic

+0

Powinieneś być może położyć większy nacisk na fakt, że wyraźnie chcesz 'string' jako typ elementu (i ani ComboBoxItem ani wyliczenia), a ciągi powinny być napisane w XAML. Wtedy twoja odpowiedź jest poprawna. – Clemens

Odpowiedz

18

W nazw dodać oświadczenie:

xmlns:sys="clr-namespace:System;assembly=mscorlib" 

następnie dodać combobox w stosownych przypadkach:

<ComboBox> 
    <sys:String>January</sys:String> 
    <sys:String>February</sys:String> 
    <sys:String>March</sys:String> 
       ... 
    <sys:String>December</sys:String> 
</ComboBox> 
4

Podoba Ci się to?

<ComboBox > 

<ComboBoxItem Content="Jenuary"></ComboBoxItem> 

<ComboBoxItem Content="February"></ComboBoxItem> 

<ComboBoxItem Content="Mars"></ComboBoxItem> 

.... and so on.... 
</ComboBox> 
+0

Najpierw spróbowałem tego podejścia; w kodzie SelectedItem Combobox zwraca obiekt ComboBoxItem. Potrzebuję zamiast tego łańcucha. – synergetic

+0

'ComboBox.SelectedItem' na get zwraca obiekt ... Może nie rozumiem twojego pytania. –

1

Należy powiązać ItemsSource pola kombi do majątku List<string>.