我正在寻找ListPicker
控件的代码示例在Windows Phone 7中,我碰到了这个
(http://www.c-sharpcorner.com/uploadfile/f397b9/using-listpicker-in-windows-phone-7/)
<phone:PhoneApplicationPage.Resources>
<DataTemplate x:Name="lpkItemTemplate">
<TextBlock Text="{Binding Country}" />
</DataTemplate>
<DataTemplate x:Name="lpkFullItemTemplate">
<TextBlock Text="{Binding Country}" />
</DataTemplate>
</phone:PhoneApplicationPage.Resources>
.
.
.
<toolkit:ListPicker FullModeItemTemplate="{Binding lpkFullItemTemplate}"
Grid.Row="5" ItemTemplate="{Binding lpkItemTemplate}"
x:Name="lpkCountry"/>
在此示例中,ListPicker DataTemplates
在PhoneApplicationPage.Resources
字典中定义,属性FullModeItemTemplate
和ItemTemplate
使用{Binding}
扩展名设置,我有在WPF中有一点背景,所以我不希望代码正常运行但是当我尝试它时工作得很好,所以我尝试了WPF中的等效示例但是没有工作
<Window.Resources>
<Style TargetType="Button" x:Name="btnComic">
<Setter Property="FontFamily" Value="Comic Sans MS"/>
<Setter Property="Foreground" Value="Red"/>
</Style>
</Window.Resources>
<Grid>
<Button Style="{Binding btnComic}" Content="Test"/>
</Grid>
Silverlight和WPF中的绑定是如此不同,以至于相同的语法在一个平台上工作但在另一个平台中不起作用?或者我只是遗漏了什么?
答案 0 :(得分:2)
WPF和WP Silverlight有些不同,但绑定的工作方式大致相同。链接上的代码是乱码。 (有关正确的示例,请参阅here。)
可能发生的是“FullModeItemTemplate”和“ItemTemplate”绑定失败(请检查VS中的“输出”窗口以确认)。请注意,DataTemplates
也是无意义的(项目是字符串,而不是具有“Country”属性的对象)。代码可能会运行,因为ListPicker会将项目显示为字符串而不设置项目模板。