• RowDefinition的Height="*"和 ColumnDefinition的Width="*" 在C#中的写法


     ColumnDefinition.Width的数据类型是:GridLength,所以就可以写为:

     column1.Width = new GridLength(1, GridUnitType.Star); //column1为一个实例

     如果ColumnDefinition的Width="Auto"   则在C#代码里就可以写为

     column1.Width =GridLength.Auto;

     这里不要搞混了, GridLength.Auto是一个结构,而 new GridLength(1, GridUnitType.Star);是一个类

    下面来一个完整的布局代码,全部使用C#代码完成(练习的) 

     public partial class MainWindow : Window
        {
            public MainWindow()
            {
                InitializeComponent();

                //显示网格
                grid1.ShowGridLines = true;

                //
                RowDefinition row1 = new RowDefinition();
                RowDefinition row2 = new RowDefinition();

                //
                ColumnDefinition column1 = new ColumnDefinition();
                ColumnDefinition column2 = new ColumnDefinition();

                //使用*号布局,当值为1的时候,表示*  值为2的时候,表示2*  就是说,第二列的宽度是第一列宽度的2倍
                column1.Width = new GridLength(1, GridUnitType.Star); 
                column2.Width = new GridLength(2, GridUnitType.Star);


                Button button1 = new Button();
                Button button2 = new Button();
                Button button3 = new Button();
                Button button4 = new Button();

                //将行和列添加到Grid面板里
                grid1.RowDefinitions.Add(row1);
                grid1.RowDefinitions.Add(row2);

                grid1.ColumnDefinitions.Add(column1);
                grid1.ColumnDefinitions.Add(column2);

                //将按钮添加到Grid面板里
                grid1.Children.Add(button1);
                grid1.Children.Add(button2);
                grid1.Children.Add(button3);
                grid1.Children.Add(button4);

                button1.Content = "1";
                button2.Content = "2";
                button3.Content = "3";
                button4.Content = "4";

                //设置每个按钮所在的单元格中
                Grid.SetRow(button1, 0);
                Grid.SetColumn(button1, 0);

                Grid.SetRow(button2, 0);
                Grid.SetColumn(button2, 1);

                Grid.SetRow(button3, 1);
                Grid.SetColumn(button3, 0);

                Grid.SetRow(button4, 1);
                Grid.SetColumn(button4, 1);


            }
        }


  • 相关阅读:
    eclipse导入web项目报错 Cannot find the class file for javax.servlet.ServletContext.
    项目检出JRE问题(Unbound classpath container: 'JRE System Library [JavaSE-1.7]' in project 'idweb')
    eclipse添加web项目报错“Target runtime Apache Tomcat v7.0 is not defined.”
    Mysql(Navicat for Mysql)怎么添加数据库
    Jmeter线程ramp-up period (in seconds)如何取值
    JMeter基础使用方法
    loadrunner中回放log看不到参数替代后具体数值
    Luogu P2490「JSOI2016」黑白棋
    LOJ #2026「JLOI / SHOI2016」成绩比较
    LOJ#2127「HAOI2015」按位或
  • 原文地址:https://www.cnblogs.com/zhuiyi/p/2696032.html
Copyright © 2020-2023  润新知