datagridview 手动添加列和行

    技术2022-05-20  46

    方法一:通过手动添加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);

     

    当然其它类型的列类似。


    最新回复(0)