WPF 在 XAML 中使用 Grid 显示表格

Posted

技术标签:

【中文标题】WPF 在 XAML 中使用 Grid 显示表格【英文标题】:WPF showing Table using Grid in XAML 【发布时间】:2020-08-20 09:53:36 【问题描述】:

我正在尝试在 WPF 中使用 XAML 中的 Grid 显示表格。

我的WPF 应用程序中的XAML 代码是这样的-

<Grid ShowGridLines="True" Background="Yellow">
    <Grid.ColumnDefinitions>
        <ColumnDefinition></ColumnDefinition>
        <ColumnDefinition></ColumnDefinition>
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition></RowDefinition>
        <RowDefinition></RowDefinition>
    </Grid.RowDefinitions>
    <TextBlock Text="Valid From" Grid.Row="0" Grid.Column="0" FontSize="16" VerticalAlignment="Center" HorizontalAlignment="Center"></TextBlock>
    <TextBlock Text="Binding ValidFrom" Grid.Row="0" Grid.Column="1" FontSize="16" VerticalAlignment="Center" HorizontalAlignment="Center"></TextBlock>
    <TextBlock Text="Valid To" Grid.Row="1" Grid.Column="0" FontSize="16" VerticalAlignment="Center" HorizontalAlignment="Center"></TextBlock>
    <TextBlock Text="Binding ValidTo" Grid.Row="1" Grid.Column="1" FontSize="16" VerticalAlignment="Center" HorizontalAlignment="Center"></TextBlock>
    <TextBlock Text="SigningTime" Grid.Row="2" Grid.Column="0" FontSize="16" VerticalAlignment="Center" HorizontalAlignment="Center"></TextBlock>
    <TextBlock Text="Binding SigningTime" Grid.Row="2" Grid.Column="1" FontSize="16" VerticalAlignment="Center" HorizontalAlignment="Center"></TextBlock>
</Grid>

我现在是这样的-

我想要一张干净的桌子,有人可以帮忙吗?

【问题讨论】:

【参考方案1】:

您在网格中只有两行,但有三行数据。

你应该添加另一个行定义:

<Grid.RowDefinitions>
    <RowDefinition></RowDefinition>
    <RowDefinition></RowDefinition>
    <RowDefinition></RowDefinition>
</Grid.RowDefinitions>

如果您将 grid.row 设置为 2,则行从零开始,因此会查找第三行。

当行(或列)少于附加属性时,解释默认为最后一个有效的,因此使用当前标记将两组数据放入第二行。

【讨论】:

以上是关于WPF 在 XAML 中使用 Grid 显示表格的主要内容,如果未能解决你的问题,请参考以下文章

WPF知识点全攻略04-XAML页面布局

WPF 在列表框中启用突出显示、复制和粘贴

WPF Grid布局 实现DataGrid控件宽充满布局

WPF C#代码中引用XAML中的控件

WPF中用xaml怎么给Gird或canvas插入背景图片?

wpf文件名显示在label中