zoukankan      html  css  js  c++  java
  • C# DataGridView 动态添加列和行

    https://blog.csdn.net/alisa525/article/details/7350471

    dataGridView1.ReadOnly = true ;      //禁用编辑功能

    方法一:通过手动添加Datatable,再绑定dataGridView

    DataTable dt = new DataTable();//建立个数据表

    dt.Columns.Add(new DataColumn("id", typeof(int)));//在表中添加int类型的列

    dt.Columns.Add(new DataColumn("Name", typeof(string)));//在表中添加string类型的Name列

    DataRow dr;//行
    for (int i = 0; i < 3; i++)
    {
          dr = dt.NewRow();
          dr["id"] = i;
          dr["Name"] = "Name" + i;
          dt.Rows.Add(dr);//在表的对象的行里添加此行
    }

    dataGridView1.DataSource =dt;

    如果要添加一个textbox效果的列,可做如下处理

    dt.Columns.Add(new DataColumn("选中", typeof(bool));

    方法二:直接在dataGridView中插入

            dataGridView1.ColumnCount = 4;
            dataGridView1.ColumnHeadersVisible = true;

            // Set the column header style.
            DataGridViewCellStyle columnHeaderStyle = new DataGridViewCellStyle();

            columnHeaderStyle.BackColor = Color.Beige;
            columnHeaderStyle.Font = new Font("Verdana", 10, FontStyle.Bold);
            dataGridView1.ColumnHeadersDefaultCellStyle = columnHeaderStyle;

            // Set the column header names.
            dataGridView1.Columns[0].Name = "Recipe";
            dataGridView1.Columns[1].Name = "Category";
            dataGridView1.Columns[2].Name = "Main Ingredients";
            dataGridView1.Columns[3].Name = "Rating";

            // Populate the rows.
            string[] row1 = new string[] { "Meatloaf", "Main Dish", "ground beef",
                "**" };
            string[] row2 = new string[] { "Key Lime Pie", "Dessert", 
                "lime juice, evaporated milk", "****" };
            string[] row3 = new string[] { "Orange-Salsa Pork Chops", "Main Dish", 
                "pork chops, salsa, orange juice", "****" };
            string[] row4 = new string[] { "Black Bean and Rice Salad", "Salad", 
                "black beans, brown rice", "****" };
            string[] row5 = new string[] { "Chocolate Cheesecake", "Dessert", 
                "cream cheese", "***" };
            string[] row6 = new string[] { "Black Bean Dip", "Appetizer", 
                "black beans, sour cream", "***" };
            object[] rows = new object[] { row1, row2, row3, row4, row5, row6 };

            foreach (string[] rowArray in rows)
            {
                dataGridView1.Rows.Add(rowArray);
            }

    插入DataGridViewCheckBoxColumn列

    DataGridViewCheckBoxColumn column = new DataGridViewCheckBoxColumn();
    {
            column.HeaderText = "选中";

            column.Name = isSelected;

            column.AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
            column.FlatStyle = FlatStyle.Standard;
            column.ThreeState = true;
            column.CellTemplate = new DataGridViewCheckBoxCell();
            column.CellTemplate.Style.BackColor = Color.Beige;
        }
     DataGridView1.Columns.Insert(0, column);

  • 相关阅读:
    ORA01033:ORCLE initialization or shutdown in progress问题的解决
    OA、SOA和SOAP
    [导入]循环赛如何排列问题
    [导入]Free Compilers / Interpreters
    终于知道纹理的GL_MODULATE是怎么回事了
    怎么acm.tongji.edu.cn又关机了?
    [导入]一个2002罗马尼亚赛区的ACM的题目
    netcraft at tongji.edu.cn
    [导入]对编写安全的代码这个方法有用吗?
    [导入]最简单的方法输出下列图形
  • 原文地址:https://www.cnblogs.com/LuoEast/p/11867778.html
Copyright © 2011-2022 走看看