【发布时间】:2015-04-25 20:38:59
【问题描述】:
我正在使用 C#/XAML 开发 Windows 8 应用程序。
我有一个要显示的步骤列表,该列表可以包含一对多步骤。
我已经尝试过GridView 和ListView 控件,但是使用这些控件,不可能让每个元素都有自己的高度(因为一步可能只有一行文本,而下一步可能只有 3 行, 例如)。 VariableSizedGridview 也无济于事。
我想要实现的是类似于 Microsoft Bing Food & Drink 应用程序中显示烹饪步骤的方式。因此,步骤显示在第一列的行中,当到达页面末尾时,它会创建第二列,依此类推。像这样:
谁能帮我找到实现这一目标的方法?
使用什么控件以及如何使用?
看起来很简单,但我在网上搜索时找不到任何解决方案。
谢谢
这是我对Gridview 控件所做的(Listview 非常相似):
<Grid Name="gridSteps" Grid.Column="3" Margin="25,69,25,69">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TextBlock Text="ÉTAPES" FontSize="22" FontWeight="Bold"></TextBlock>
<GridView Grid.Row="1" Name="gvGroupSteps" SelectionMode="None" IsHitTestVisible="False" VerticalAlignment="Top">
<GridView.ItemTemplate>
<DataTemplate>
<StackPanel Width="400">
<TextBlock Text="{Binding Order}" Margin="0,15,0,0" FontSize="20" Foreground="Bisque"></TextBlock>
<TextBlock Text="{Binding Description}" Margin="0,5,0,0" FontSize="18" TextWrapping="Wrap"></TextBlock>
</StackPanel>
</DataTemplate>
</GridView.ItemTemplate>
<GridView.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate>
<StackPanel Background="#FFC9C9C9">
<TextBlock Text="{Binding GroupName}" FontSize="20" FontWeight="SemiBold"></TextBlock>
</StackPanel>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
</GridView.GroupStyle>
</GridView>
</Grid>
【问题讨论】:
标签: c# wpf xaml windows-8.1