我的Windows商店应用中有一个列表视图:
<ListView ItemsSource="{Binding}" x:Name="lView" Grid.Column="1" HorizontalAlignment="Left" Height="586" Margin="74.714,105,0,0" VerticalAlignment="Top" Width="741" ItemTemplate="{StaticResource ImageTextListMailFolderTemplate}"/>
以及此列表视图的数据模板:
<DataTemplate x:Key="ImageTextListMailFolderTemplate">
<Grid Width="280">
<TextBlock Text="some text" FontSize="24" FontWeight="Light"
Margin="10,10,0,0" HorizontalAlignment="Left"
TextTrimming="WordEllipsis" TextWrapping="Wrap"/>
</Grid>
</DataTemplate>
在C#代码中,我使用它作为listview的源:
List<string> GridViewData = new List<string>();
lView.ItemsSource = GridViewData;
我的问题是:当我使用没有模板的listview时,GridViewData中的所有数据都显示在listview中。但是当我使用DataTemplate时,在每个listview项中都是文本“some text”,就像它在模板中定义一样。但我想使用模板,并在listview的每个项目中显示来自GridViewData的数据。有人可以帮帮我,怎么做?
谢谢
答案 0 :(得分:0)
DataTemplate中的文本绑定应该是这样的:
Text="{Binding}"
以下是完整的DataTemplate代码:
<DataTemplate x:Key="ImageTextListMailFolderTemplate">
<Grid Width="280">
<TextBlock Text="{Binding}" FontSize="24" FontWeight="Light"
Margin="10,10,0,0" HorizontalAlignment="Left"
TextTrimming="WordEllipsis" TextWrapping="Wrap"/>
</Grid>
</DataTemplate>