使用GridView Xaml C#WinRT(Win 8.1)将行显示为列

时间:2014-04-14 19:14:04

标签: c# gridview winrt-xaml windows-8.1

我有一个列表对象。 “Score”类中的属性为int(PlayerId,ScoreId,TrialId)

List<Score> scList;

PlayerId ScoreId TrialId
Player1    25     1
Player2    28     1
Player1    34     2
Player2    21     2

Gridview所需的输出:

TrialId     Player1   Player2
1            25         28
2            34         21

我尝试了datatable(添加动态列),但它没有显示在任何命名空间中。 没有使用datatable还有其他方法吗?我需要修改scList列表才能实现所需的输出。

<GridView x:Name="GrdScore" HorizontalAlignment="Left">
            <GridView.HeaderTemplate>
                <DataTemplate>
                    <TextBlock Text="{ Binding PlayerId}"></TextBlock>
                </DataTemplate>
            </GridView.HeaderTemplate>
            <GridView.ItemTemplate>
                    <TextBlock Text="{Binding ScoreId}"></TextBlock>
            </GridView.ItemTemplate>
 </GridView>

1 个答案:

答案 0 :(得分:1)

WinRT / XAML中的GridView与WPF中的GridView不同。它的布局实际上更类似于Windows 8开始屏幕。

WinRT / XAML中没有内置网格/表格控件,因此更好的选择可能是具有静态指定列宽的ListView控件。

您也可以查看是否有针对Windows 8的DataGrid的商业或开源实现。

检查这个相关的答案:

Create a table (DataGrid) in Windows 8 metro apps (C#/XAML)