Windows应用商店应用ListView DataTemplate

时间:2013-05-14 13:51:18

标签: windows-store-apps

我的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的数据。有人可以帮帮我,怎么做?

谢谢

1 个答案:

答案 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>