wpf grid 的用法

WPF中的Grid是一种布局控件,可用于将子控件按照行和列的方式排列。

以下是Grid控件的用法:

  1. 在XAML文件中,添加一个Grid控件:
xml 复制代码
<Grid>
</Grid>
  1. 在Grid控件中,添加行和列定义:
xml 复制代码
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>
</Grid>

在上面的例子中,Grid定义了两行和两列。行和列可以使用特定的值来定义大小,如"Auto"表示根据内容自动调整大小,"*"表示占用剩余空间的大小。

  1. 将子控件添加到Grid中,并设置其位置:
xml 复制代码
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>
    
    <Button Grid.Row="0" Grid.Column="0" Content="Button 1"/>
    <Button Grid.Row="0" Grid.Column="1" Content="Button 2"/>
    <Button Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Content="Button 3"/>
</Grid>

在上面的例子中,三个Button控件被添加到Grid中,并通过Grid.Row和Grid.Column属性来设置它们的位置。Grid.ColumnSpan属性可以指定控件跨越的列数。

通过Grid控件,可以很灵活地布局子控件,使其按照行和列的方式排列,以实现更复杂的布局效果。

1、功能最强大,布局最灵活的容器,将区域划分不同大小网格

2、主要属性配置:

基本属性:

行定义:RowDefinitions->RowDefinition(Height:*/auto/数字)

列定义:ColumnDefinitions->ColumnDefinition(Width:*/auto/数字)

尺寸共享:Grid.IsSharedSizeScope="True"配合行/列中的SharedSizeGroup属性

附加属性:Grid.Row/Grid.Column3

使用场景:无处不在c0

下面是我写的一段代码

cs 复制代码
<Window x:Class="kongjian.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:kongjian"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="100">
            </RowDefinition>
            <RowDefinition>
            </RowDefinition>
        </Grid.RowDefinitions>
        <Grid Grid.Row="0" Background="red">
            <Grid.RowDefinitions>
                <RowDefinition/>
                <RowDefinition/>
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition/>
                <ColumnDefinition/>
            </Grid.ColumnDefinitions>
            <Border Background="Green" Width="20" Height="10" Grid.Column="2" Grid.RowSpan="2"/>
            <GridSplitter HorizontalAlignment="Right" VerticalAlignment="Stretch" Width="20" Background="red"/>
        </Grid>
        <Grid Grid.Row="1" Background="Green">
            <Grid.RowDefinitions>
                <RowDefinition/>
                <RowDefinition/>
                <RowDefinition/>
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition/>
                <ColumnDefinition/>
            </Grid.ColumnDefinitions>

        </Grid>
    </Grid>
</Window>

界面如下:

相关推荐
绿龙术士7 小时前
构建现代化WPF应用:数据驱动开发与高级特性解析
c#·wpf
wangnaisheng2 天前
【WPF】Opacity 属性的使用
wpf
姬激薄2 天前
配置Hadoop集群-集群配置
wpf
python算法(魔法师版)2 天前
.NET 在鸿蒙系统上的适配现状
华为od·华为·华为云·.net·wpf·harmonyos
大道随心3 天前
【wpf】11 在WPF中实现父窗口蒙版效果:原理详解与进阶优化
wpf
zizisuo3 天前
9.1.领域驱动设计
wpf
大道随心3 天前
【wpf】10 C#树形控件高效实现:递归构建与路径查找优化详解
开发语言·c#·wpf
离歌漠3 天前
WPF内嵌其他进程的窗口
c#·wpf
沉到海底去吧Go4 天前
【身份证识别表格】批量识别身份证扫描件或照片保存为Excel表格,怎么大批量将身份证图片转为excel表格?基于WPF和腾讯OCR的识别方案
ocr·wpf·excel·身份证识别表格·批量扫描件身份证转表格·图片识别表格·图片识别excel表格
csdn_aspnet4 天前
WPF 性能 UI 虚拟化 软件开发人员的思考
ui·wpf