【问题标题】:UWP GridView equivalent of WPF DataGridUWP GridView 等效于 WPF DataGrid
【发布时间】:2020-05-19 16:31:43
【问题描述】:

我们如何使用 UWP 的 GridView 看起来像下面的 WPF DataGrid

备注:数据绑定不重要。您可以只假设一个伪代码(具有 MyTableId、DateModified、Author 属性的伪类)。

WPF 数据网格 XAML

<Window x:Class="MyWPFProj.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    ...........
        Title="MainWindow" Height="450" Width="800">
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="103*"/>
            <ColumnDefinition Width="697*"/>
        </Grid.ColumnDefinitions>
        <DataGrid x:Name="dgMathDocs" IsReadOnly="True"  AutoGenerateColumns="False" SelectionMode="Single" Margin="0,43,0,0" Grid.ColumnSpan="2">
            <DataGrid.Columns>
                <DataGridTemplateColumn Header="Edit">
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <Button x:Name="btnEdit" Content="Edit" Click="btnEdit_Click"></Button>
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </DataGridTemplateColumn>
                <DataGridTemplateColumn Header="Delete">
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <Button x:Name="btnDelete" Content="Delete" Click="btnDelete_Click"></Button>
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </DataGridTemplateColumn>
                <DataGridTextColumn Header="ID" Visibility="Collapsed" Binding="{Binding MyTableId}" />
                <DataGridTemplateColumn Header="Date Modified">
                    <DataGridTemplateColumn.CellEditingTemplate>
                        <DataTemplate>
                            <DatePicker SelectedDate="{Binding DateModified}"  BorderThickness="0" />
                        </DataTemplate>
                    </DataGridTemplateColumn.CellEditingTemplate>
                </DataGridTemplateColumn>
                <DataGridTextColumn Header="Author" Binding="{Binding Author}"/>
                </DataGridHyperlinkColumn>
            </DataGrid.Columns>
        </DataGrid>
    </Grid>
</Window>

上述 XAML 的 WPF DataGrid 显示

【问题讨论】:

  • 你好,你为什么坚持使用GridView而不是DataGrid? DataGrid 提供了接近 WPF 中使用 DataGrid 的许多特殊方法。与GridView相比,DataGrid显然可以更快的实现你的需求。也可以参考DataGrid的source code

标签: xaml uwp datagrid uwp-xaml


【解决方案1】:

您可以尝试从Windows Community Toolkit 使用DataGrid

您可以在 GitHub 上的 Sample App 找到更多信息

【讨论】:

  • 我知道这个工具包。但我只对使用GridView控制UWP感兴趣。
猜你喜欢
  • 2017-07-15
  • 1970-01-01
  • 2020-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-24
  • 1970-01-01
  • 2020-07-05
相关资源
最近更新 更多