zoukankan      html  css  js  c++  java
  • Silverlight 自定义表格

    功能很简单,用于备忘

    public class Table:Grid
        {
            #region Table属性

            private int rows;
            private int columns;
            private Color tableColor;

            public int Rows {
                get { return rows; }
                set { rows = value; }
            }

            public int Columns {
                get { return columns; }
                set { columns = value; }
            }

            public Color TableColor {
                get { return tableColor; }
                set { tableColor = value; }
            }

            #endregion


            #region Table事件

            #endregion

            #region Table方法

            public Table()
            {

            }

            public Table(int row, int couumn,Color color)
            {
                rows = row;
                columns = couumn;
                tableColor = color;
            }

            /// <summary>
            /// 初始化
            /// </summary>
            public void initTable() {

                Border border = new Border();
                border.BorderBrush = new SolidColorBrush(Colors.Black);
                border.BorderThickness = new Thickness(2);
                Grid grid = new Grid();

                for (int i = 0; i < rows; i++)
                {
                    grid.RowDefinitions.Insert(i, new RowDefinition() { Height = new GridLength(1,GridUnitType.Star) });
                }
                for (int j = 0; j < columns; j++)
                {
                    grid.ColumnDefinitions.Insert(j, new ColumnDefinition() { Width = new GridLength(1,GridUnitType.Star) });
                }

                //添加矩阵到单元格中
                for (int r = 0; r < rows; r++)
                {
                    for (int c = 0; c < columns; c++) {
                        Rectangle rec1 = getRectangle();
                        rec1.SetValue(Grid.RowProperty, r);
                        rec1.SetValue(Grid.ColumnProperty, c);
                        grid.Children.Add(rec1);
                    }
                }
                border.Child = grid;
                this.Children.Add(border);
            }

            Rectangle getRectangle()
            {
                Rectangle rectangle = new Rectangle
                {
                    HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch,
                    VerticalAlignment = System.Windows.VerticalAlignment.Stretch,
                    Margin = new Thickness(0, 0, 0, 0),
                    Stroke = new SolidColorBrush(Colors.Black),
                };

                return rectangle;
            }

            Rectangle getRectangle(int r,int c,Color color)
            {
                Rectangle rectangle = new Rectangle
                {
                    HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch,
                    VerticalAlignment = System.Windows.VerticalAlignment.Stretch,
                    Margin = new Thickness(0, 0, 0, 0),
                    Stroke = new SolidColorBrush(color),
                };

                return rectangle;
            }

            #endregion
           
        }

    使用方法

    Table table = new Table();
                    table.Rows = int.Parse(tbRow.Text.Trim());
                    table.Columns = int.Parse(tbColumn.Text.Trim());
                    table.initTable();
                    gridContent.Children.Add(table);

  • 相关阅读:
    转 将python的datetime转换为unix时间戳
    VMware 虚拟机中添加新硬盘的方法
    UBUNTU 安装 nodejs
    ubuntu 20 查看site-package 目录
    基于C++代码的UE4学习(四)—— 定时器
    ObjectMapper 动态用法
    关于Mybatis中Mapper是使用XML还是注解的一些思考
    Spring Boot 中使用 Jedis 及 Lettuce的对比
    批量切换版本
    Build OpenJdk
  • 原文地址:https://www.cnblogs.com/luxiaofeng54/p/1924175.html
Copyright © 2011-2022 走看看