如何使用带有Windows Phone标题的两列创建可滚动表?

时间:2015-10-13 21:26:22

标签: c# xaml windows-phone-8.1

我有一个看似非常简单的要求:我想创建一个带有两个标题的可滚动表/ gridbox / gridview。该表应绑定一个名为DataSet的数据集,其中包含具有属性Column1Column2的对象集合。此外,桌子的主体应该是可垂直滚动的。请参阅下图以获取说明。

The type of table I want to create

但这似乎很简单,我无法做到。

我尝试在顶部使用ListBox控件和两个TextBlocks,但这看起来很丑陋(因为标题未正确对齐且不属于表格的一部分)。我相信还有一个更好的解决方案,我还没有找到。

有人可以告诉我如何创建一个类似上面描述的网格,该网格绑定一个名为DataSet的数据集,该数据集有Column1Column2,并且正文可以垂直滚动吗?

1 个答案:

答案 0 :(得分:1)

我会在列表视图中使用嵌入式堆栈面板。所以,你有一个可滚动的堆栈,你可以填充信息。然后使用顶部的文本块作为标题。

下面的XAML纯粹是一个例子,可能效果不好。

<ListView x:Name="NameofList">
                    <ListView.DataContext>
                        <Put in your object type! (Maybe a mapped class?)>
                    </ListView.DataContext>
                    <ListView.ItemTemplate>
                        <DataTemplate>
                            <StackPanel x:Name="stackList"
                                        Grid.ColumnSpan="2"
                                        Width="595"
                                        Height="59"
                                        HorizontalAlignment="Left"
                                        BorderBrush="#FF595050"
                                        BorderThickness="0,1">
                                <TextBlock x:Name="tbListName"
                                           FontWeight="Bold"
                                           Text="{Binding Name}" />
                                <TextBlock x:Name="tbListDate"
                                           FontWeight="Bold"
                                           Text="{Binding Date}" />
                                <TextBlock x:Name="tbListNote1"
                                           FontWeight="Bold"
                                           Text="{Binding Number}" />
                            </StackPanel>
                        </DataTemplate>
                    </ListView.ItemTemplate>
                    <Your object! />
                </ListView>