
<Window x:Class="GenerateTokenApp.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:GenerateTokenApp"
mc:Ignorable="d"
Title="Generate Token App" Height="450" Width="800" Closed="Window_Closed">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
Grid.RowDefinitions>
<Button Grid.Row="0" x:Name="SelectFileButton" Content="Select File" Margin="10,10,10,0" Height="100" Click="SelectFileButton_Click" FontSize="36"/>
<Button x:Name="GenerateTokenButton" Content="Generate Token" HorizontalAlignment="Left" Margin="10,50,0,0" VerticalAlignment="Top" Width="200" Click="GenerateTokenButton_Click" Visibility="Collapsed"/>
<TextBox Grid.Row="1" x:Name="LogTextBox" Margin="10" TextWrapping="Wrap" />
Grid>
Window>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="120*"/>
<ColumnDefinition Width="167*"/>
<ColumnDefinition Width="448*"/>
<ColumnDefinition Width="65*"/>
Grid.ColumnDefinitions>
Width 属性的值在 WPF 中决定了一个元素在水平方向上的大小。Auto 和 * 是两种常见的设置方式,它们有不同的含义:Width="Auto":
Width="*":
示例:
在上述示例中,第一个按钮的宽度适应其内容,第二个按钮占据剩余的空间,而第三个按钮占据了剩余空间的两倍。这是使用 Auto 和 * 来定义列的一个简单示例。
比如 从第0列起占4列
Grid.Row="3" Grid.Column="0" Grid.ColumnSpan="4"
上述示例中,第一列的宽度是固定的 120 个逻辑单位,而第二列和第三列平均分配了剩余的可用空间。