向WPF的Grid里面增加控件

在c#中,有时需要通过代码创建面板控件,但是对于面板的操作与之前的控件并不是很直观,因此记下方法,以供后来复习使用:

创建两行两列的表格:

第一种方法:

[csharp]  view plain  copy
  1. Grid grid = new Grid();  
  2.             RowDefinition row1 = new RowDefinition();  
  3.             RowDefinition row2 = new RowDefinition();  
  4.             ColumnDefinition col1 = new ColumnDefinition();  
  5.             ColumnDefinition col2 = new ColumnDefinition();  
  6.             grid.RowDefinitions.Add(row1);  
  7.             grid.RowDefinitions.Add(row2);  
  8.             grid.ColumnDefinitions.Add(col1);  
  9.             grid.ColumnDefinitions.Add(col2);  
  10.             grid.ShowGridLines = true;    


第二种方法:

[csharp]  view plain  copy
  1. Grid grid = new Grid();  
  2.             grid.RowDefinitions.Add(new RowDefinition());  
  3.             grid.RowDefinitions.Add(new RowDefinition());  
  4.             grid.ColumnDefinitions.Add(new ColumnDefinition());  
  5.             grid.ColumnDefinitions.Add(new ColumnDefinition());  
  6.             grid.ShowGridLines = true;   


其中第一种方法可以自定义行与列的属性,第二种是auto属性,根据不同场景使用不同的方式。

 

向创建的表格中添加控件:

向之前创建的表格的第二行第二列加一个TextBox控件,代码如下:

[csharp]  view plain  copy
  1. TextBox text = new TextBox();  
  2.   
  3. grid.Children.Add(text);  
  4.   
  5. Grid.SetRow(text,1);  
  6.   
  7. Grid.SetColumn(text,1);  
  8.   
  9. //同理也可设置TextBox在Grid中占用的列数或行数:  
  10.   
  11. Grid.SetRowSpan(text,1);  
  12.   
  13. Grid.SetColumnSpan(text,1);  

注意:Grid面板不能嵌套在Grid中,如需在Grid下重新设计表格,使用stackPanel控件再加一层。

转载于:https://www.cnblogs.com/dxmfans/p/9434890.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WPF中的Grid控件是一种用于布局的面板控件,它可以将UI元素组织成行和列的网格,从而实现灵活的布局。以下是Grid控件的用法: 1. 添加Grid控件添加Grid控件,请将其放在WPF窗口或其他容器控件(例如StackPanel)中。在XAML中,可以使用以下代码创建一个Grid: ``` <Grid> <!-- UI元素将被添加到此处 --> </Grid> ``` 2. 定义行和列 在Grid控件中,可以通过定义行和列来确定UI元素的位置。要定义行和列,请使用Grid.RowDefinitions和Grid.ColumnDefinitions属性。以下是一个例子: ``` <Grid> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="*" /> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> <ColumnDefinition Width="Auto" /> </Grid.ColumnDefinitions> <!-- UI元素将被添加到此处 --> </Grid> ``` 在这个例子中,我们定义了两个行,第一个行的高度是Auto,第二个行的高度是*,这意味着它会占据Grid控件中剩余的空间。我们还定义了两列,第一列的宽度是*,第二列的宽度是Auto,这意味着第一列将占据Grid控件的大部分空间,第二列将占据其余空间。 3. 添加UI元素 要向Grid控件添加UI元素,请将它们放在Grid中,并为它们指定Grid.Row和Grid.Column属性。例如,以下代码向刚刚定义的Grid控件添加了两个Button: ``` <Grid> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="*" /> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> <ColumnDefinition Width="Auto" /> </Grid.ColumnDefinitions> <Button Grid.Row="0" Grid.Column="0" Content="Button 1" /> <Button Grid.Row="0" Grid.Column="1" Content="Button 2" /> </Grid> ``` 在这个例子中,第一个Button位于第一个行的第一个列,第二个Button位于第一个行的第二列。 4. 合并行和列 在Grid控件中,可以合并相邻的行或列,以创建更复杂的布局。要合并行或列,请将多个UI元素的Grid.RowSpan或Grid.ColumnSpan属性设置为相同的值。例如,以下代码创建了一个跨越两行的TextBox: ``` <Grid> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="*" /> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> <ColumnDefinition Width="Auto" /> </Grid.ColumnDefinitions> <TextBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" /> <Button Grid.Row="1" Grid.Column
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值