WPF中Grid布局XMAl與后台更改,最普通的登錄界面為例。
<Grid Width="200" Height="100" >
<!--定義了兩列-->
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="100*"/>
</Grid.ColumnDefinitions>
<!--定義了四行-->
<Grid.RowDefinitions>
<RowDefinition Height="25"/>
<RowDefinition Height="25"/>
<RowDefinition Height="25"/>
<RowDefinition Height="25"/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" Grid.Column="0" TextAlignment="Right" Text="用戶名:" Name="UserName"/>
<!--第一行第一列-->
<TextBlock Grid.Row="1" Grid.Column="0" TextAlignment="Right" Text="密碼:" Name="pass"/>
<TextBlock Grid.Row="2" Grid.Column="0" TextAlignment="Right" Text="確認密碼:" Name="repass"/>
<Button Grid.Row="3" Grid.ColumnSpan="2" Height="23" Width="100" Content="確認" Click="Button_Click" Name="btn"/>
<!--Grid.ColumnSpan="2":合並單元格-->
<TextBox Name="TxtBoxName" Grid.Row="0" Grid.Column="1" Text="" />
<!--第一行第二列-->
<PasswordBox Name="pass1" Grid.Row="1" Grid.Column="1"/>
<!--密碼框-->
<PasswordBox Name="pass2" Grid.Row="2" Grid.Column="1" />
</Grid>
效果如圖所示:
后台更改:
Grid.SetRow(UserName, 1);
Grid.SetColumn(UserName, 0);
Grid.SetRow(pass, 0);
Grid.SetColumn(pass, 0);
Grid.SetRow(repass, 2);
Grid.SetColumn(repass, 0);
Grid.SetRow(btn, 3);
Grid.SetColumnSpan(btn, 2);