[英]Windows phone 7.1, Listpicker fullmodeitemtemplate binding text
我正在嘗試更改列表選擇器中項目的字體大小。 我使用fullmodeitemtemplate來更改字體大小等。
問題是我不知道如何為模板中的項目綁定文本
<DataTemplate x:Name="PickerFullModeItemTemplate">
<StackPanel Orientation="Horizontal" Margin="16 21 0 20" Background="Orange" Width="110" Height="110" HorizontalAlignment="Center" VerticalAlignment="Center">
<TextBlock Text="{WHAT TO TYPE HERE?}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="5" FontSize="36"/>
</StackPanel>
</DataTemplate>
我通過在C#中設置itemsource來填充列表選擇器
foreach (Item i in weight)
{
sourceInput.Add(i.name);
}
}
InputSelector.ItemsSource = sourceInput;
這給我留下了僅包含字符串的itemsource列表,然后我不知道如何為每個項目綁定文本。 當itemsource列表采用這種格式時,我閱讀了一些有關如何執行此操作的文章
source.Add(new Cities() { Name = "Mexico", Country = "MX", Language = "Spanish" });
this.listPicker.ItemsSource = source;
然后xaml部分是這樣的
<TextBlock Text="{Binding Name}"/>
任何幫助將不勝感激 :)
更新
我找到了與原始項目綁定的正確綁定。
<TextBlock Text="{Binding BindsDirectlyToSource=True}"/>
看起來就是這樣,然后將源項綁定到文本塊
您應該將Cities
類型的對象添加到您的sourceInput
集合中。
鍵入Text="{Binding Name}"
是正確的。
您的Cities類很可能沒有實現INotifyPropertyChanged接口。 每次更新將UI元素綁定到的Name和其他屬性時,都應通知UI。
<TextBlock Text="{Binding Name}"/>
這很酷,但對於列表選擇器,還有DisplayMemberPath屬性,因此,
在listpicker上添加:
DisplayMemberPath =“名稱”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.