2016-03-15 87 views
-1

我想動態構建一個AutoCompleteBox。然後我想在我的項目源中使用客戶端列表,並且用戶可視化DescClient字段。綁定到ItemSource

List<Client> clients = ClientAction.getClientsFromUsers(Environment.UserName); 
(field as AutoCompleteBox).ItemsSource = clients; 

//CLIENT MEMBERS 
    private int idClient; 
      private string descClient; 
      private int idGroup; 
      private User user; 

已經嘗試過這樣的:

(field as AutoCompleteBox).ValueMemberPath = "DescClient" 

但不顯示任何內容。我是否做了錯誤的ValueMemberPath或者我應該使用另一個Proprety?

+0

您是否爲客戶成員定義了屬性? – Domysee

+3

只需注意,你應該更好地寫'(((AutoCompleteBox)field)'而不是'(field as AutoCompleteBox)',因爲如果'field'不是AutoCompleteBox,它會正確地拋出一個InvalidCastException,而不是NullReferenceException。 – Clemens

+0

是的,我有我的propretie「DescField」來訪問變量 –

回答

1

正如here所述,您可以使用ItemTemplate(如果需要,還可以參考如何從代碼創建DataTemplate)。

here來自Jeff Wilcox網站的AutoCompleteBox指南。

+0

我試過這種方法,建立我與綁定用戶的控制,但它保持不變 –

+0

眼下列表返回我不是DescField但客戶的全名.Client 我想我錯過了一些屬性只顯示該字段 –

+0

已經工作!我必須添加ValueMemberPath =「DescClient」來控制:AutoCompleteBox。非常感謝 –

相關問題