我試圖顯示一個ComboBox
與他們的名字的用戶列表。WPF組合框可編輯字段綁定
說我有一個對象「Person」,它有屬性「FirstName」和「LastName」。 我已成功使用DataBinding
和IValueConverter
正確填充ComboBox
,但它在ComboBox
(名爲cbPersons)的可編輯字段中未正確顯示。
在後面的代碼:
List<Person> persons = ... ; // Assume populated with data
cbPersons.ItemsSources = persons;
在XAML:
<ComboBox.ItemTemplate>
<DataTemplate>
... // Code for Multibinding "FirstName" and "LastName" to TextBox
</DataTemplate>
</ComboBox.ItemTemplate>
當我正確啓動窗口的一切顯示在ComboBox
下拉列表中。我有ComboBox.Text
設置爲我想要的字符串。 但是,當我選擇一個值,而不是顯示適當的字符串,它只是顯示「人」,這是有道理的,因爲這是它包含的對象。
我的問題是如何讓可編輯字段像其他下拉菜單一樣正常顯示?
我想過在ComboBox.SelectedItem
或ComboBox.Text
上使用相同的綁定,但他們似乎沒有工作。
SOLUTION:
所以我發現真正的原因爲什麼它沒有工作了,我已經設置IsEditable =假。改變後,一切正常。
我同意使用MVVM,但是我在已經編寫的代碼之上添加。所以我不想讓整個班級重新受到影響。 – tigersuen