【发布时间】:2015-06-13 08:39:03
【问题描述】:
我想在 Windows phone 8.1 中开发类似 Longlist Selector Wp8 的布局。
我遇到了一个问题,我的列表没有出现。
XAML 页面
<Grid >
<Grid.Resources>
<CollectionViewSource x:Name="MainGrps"
IsSourceGrouped="True"/>
</Grid.Resources>
<ListView ItemsSource="{Binding Source={StaticResource MainGrps}}" Margin="50">
<ListView.ItemTemplate>
<DataTemplate >
<Grid Background="Gray">
<StackPanel>
<TextBlock Foreground="White" FontSize="20" Text="{Binding ItmName}"/>
<TextBlock Foreground="White" FontSize="20" Text="{Binding ItmType}"/>
</StackPanel>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
<ListView.GroupStyle>
<GroupStyle HidesIfEmpty="True" >
<GroupStyle.HeaderTemplate>
<DataTemplate >
<Grid Background="Red">
<StackPanel Orientation="Horizontal" >
<TextBlock Text="{Binding GrpItmName}" Foreground="White"/>
<TextBlock Text="{Binding ItemsCount}" Foreground="White"/>
</StackPanel>
</Grid>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
</ListView.GroupStyle>
</ListView>
</Grid>
代码背后:
private void OnPageLoaded(object sender, RoutedEventArgs e)
{
lst_grp = new List<Grp>();
for (int i = 0; i < 10; i++)
{
Grp grp = new Grp();
grp.GrpItmName = "grp name " + i;
grp.ItemsCount = i;
grp.LstItms = new List<Itm>();
Itm itm = new Itm();
itm.ItmName = "itm name " + i;
itm.ItmType = "itm type " + i;
grp.LstItms.Add(itm);
grp.LstItms.Add(itm);
grp.LstItms.Add(itm);
lst_grp.Add(grp);
}
this.MainGrps.Source = lst_grp;
}
上面的代码有问题吗?
请帮我弄清楚或建议您是否有工作代码。
【问题讨论】:
标签: windows windows-phone-8 windows-phone-8.1