【发布时间】:2014-01-13 01:43:43
【问题描述】:
好的,所以我搜索了又搜索了又搜索了,但我找不到这个特定角度的问题的答案。我知道如何绑定到列表,以及如何通过使其成为 ObservableCollection 而不是列表来使其自动更新。但是,只有一个字符串列表,我到底是如何绑定到每个 List 元素的值的?
<DataTemplate x:Key="PageTiles">
<Grid Background="{StaticResource PhoneAccentBrush}"
Margin="6,0,6,12">
<StackPanel VerticalAlignment="Bottom">
<TextBlock Text="{Binding}"
Margin="6,0,0,6" />
</StackPanel>
</Grid>
</DataTemplate>
这是从列表中提取的 LongListSelector:
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0" VerticalAlignment="Top" Height="60">
<phone:LongListSelector Margin="0,0,-12,0"
ItemsSource="{Binding PageTitles}"
LayoutMode="Grid"
GridCellSize="150,150"
ItemTemplate="{StaticResource PageTiles}"
SelectionChanged="LongListSelector_SelectionChanged">
</phone:LongListSelector>
</Grid>
现在,我之前使用过类似的布局来根据具有字符串属性的类列表制作图块,但从来没有使用字符串列表,我找不到任何东西可以引导我朝着正确的方向前进。
【问题讨论】:
-
你试过那个代码吗?据我所知,它会起作用。
Text={Binding}应该可以解决问题 -
我还没有在现场试用它,因为它在设计预览中不起作用。我做错了吗?这是我在示例数据文件中的内容:
<vm:SoundModel.PageTitles> <sys:String>Mario</sys:String> <sys:String>Torgue</sys:String> <sys:String>Misc</sys:String> </vm:SoundModel.PageTitles> -
@har07 好的,所以我重建了清单,现在我在设计器预览中列出了三个图块,但是文本字段是空白的,不是从列表值中提取的。所以它看到现在有三个列表值,但不是这些值是什么。
-
对不起,我在开发 WP 应用时很少提供设计数据,所以我无能为力,也许这里的其他人可以。但正如我上面所说,您的绑定声明似乎已经正确,至少在运行时是这样。
标签: c# wpf xaml data-binding windows-phone-8