【发布时间】:2012-12-21 09:00:38
【问题描述】:
对于分组数据源,HeaderTemplate 位于 GroupStyle.ContainerStyle 下,容器由两行组成,一行用于表头,另一行用于项目。
GridView.HeaderTemplate 似乎并非如此。标题显示在项目的左侧,如下所示:
标题文本 [第 1 项]
有没有办法将标题文本移到项目列表上方?我假设必须更改似乎无法访问的 GridView 模板本身。
这是 GridView 的 XAML。这很简单:
<GridView x:Name="gridItems" ItemContainerStyle="{StaticResource GridViewListContainerStyle}" ItemsSource="{Binding Items}" SelectionMode="None" AllowDrop="True" CanDragItems="True" VerticalAlignment="Top" HorizontalAlignment="Center" CanReorderItems="True" Padding="1">
<GridView.HeaderTemplate>
<DataTemplate>
<Grid>
<TextBox Text="{Binding Title}" Width="290" MaxLength="20"/>
</Grid>
</DataTemplate>
</GridView.HeaderTemplate>
<GridView.ItemTemplate>
<DataTemplate>
<local:MyControl DataContext="{Binding}"/>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
谢谢。
【问题讨论】:
-
能否请您发布您的gridview的xaml。
-
感谢您更新它 - 您能否也展示一下您的项目容器样式。出了点问题,因为它不应该按照您的描述进行操作!
-
其实那个样式只是默认的。我只是创建了默认模板的副本而没有修改它。 @Ross Dargan 根据MSDN,这是默认行为:“默认情况下,ListView 的标题显示在顶部,GridView 的标题显示在左侧”。
标签: gridview windows-runtime winrt-xaml