2013-02-26 24 views
0

我正在使用DataTemplate設計ListPicker。我讀過的所有示例都假設ListItems綁定了複雜對象,因此可以使用通常的Binding Property語法引用對象上的屬性。例如如何在DataTemplate中引用綁定到Silverlight Toolkit ListPicker的簡單字符串?

this.myListPicker.Items.Add(new Profile() { Name = "Joe", 
    Occupation="Button pusher" }); 

,並在XAML,

<DataTemplate> 
    <StackPanel> 
     <TextBox Text="{Binding Name}" /> 
     <TextBox Text="{Binding Occupation}" /> 
    </StackPanel> 
</DataTemplate> 

但是我ListPickers必然的簡單strings一個List和似乎沒有要上,實際上指的是字符串的字符串的屬性。

如何獲取DataTemplate中的字符串句柄,以便我可以將它們分配給例如TextBox在模板中?

+0

什麼是ListItemPicker?令人驚訝的是,這個問題目前是該術語的第一個或第二個搜索結果。 – dtm 2013-02-27 16:45:41

+0

啊,ListPicker不是ListItemPicker是我的意思,我想我可能與子元素混淆...... – Brendan 2013-02-27 17:47:07

回答

1

在顯示的示例代碼中,實際上確實有一個「複雜」對象,一個配置文件,並且您指定的綁定應該可以工作。

如果你真的只是有一個字符串作爲項目,那麼在你的ItemTemplate結合會是什麼樣子:

<TextBox Text="{Binding }" /> 

相關的細節是,所有ItemsControls(和ListPicker似乎是一個)設置的DataContext的每個項目對該項目的視圖。上面的綁定語法的意思是「綁定到源自身」,除非另有說明(如使用Source或RelativeSource等),否則任何綁定的來源都是DataContext。

MSDN有更多的細節here

相關問題