C#上位机开发(九)—— 表格控件的使用

32 篇文章 0 订阅

一、表格控件的基本使用方法

1. 添加控件

添加一个DataGridView控件:

为了方便使用,将该控件铺满整个窗口(Dock属性设为fill):

2. 设置列数、列名

添加初始化函数:

private void InitGridView()
{
    // 设置列
    dataGridView1.ColumnCount = 4;
    dataGridView1.Columns[0].Name = "学号";
    dataGridView1.Columns[1].Name = "姓名";
    dataGridView1.Columns[2].Name = "性别";
    dataGridView1.Columns[3].Name = "联系方式";
}

在构造函数中调用:

public Form1()
{
    InitializeComponent();
    InitGridView();
}

效果如下:

3. 向表格中添加数据

构造类:

    public class Student
    {
        public int Id;
        public string Name;
        public bool Sex;
        public string Phone;

        public Student()
        { 
        }

        public Student(int id, string name, bool sex, string phone)
        {
            this.Id = id;
            this.Name = name;
            this.Sex = sex;
            this.Phone = phone;
        }
    }

编写一个添加到表格中的方法:

private void AddRow(Student stu)
{
    object[] row = {
        stu.Id,
        stu.Name,
        stu.Sex ? "男" : "女",
        stu.Phone
    };

    dataGridView1.Rows.Add(row);

}

添加数据:

private void InitGridView()
{
    // 设置列
    dataGridView1.ColumnCount = 4;
    dataGridView1.Columns[0].Name = "学号";
    dataGridView1.Columns[1].Name = "姓名";
    dataGridView1.Columns[2].Name = "性别";
    dataGridView1.Columns[3].Name = "联系方式";

    // 添加数据
    AddRow(new Student(20211111, "user1", true,  "18324766666"));
    AddRow(new Student(20211112, "user2", false, "18324777777"));
    AddRow(new Student(20211113, "user3", true,  "18324788888"));
    AddRow(new Student(20211114, "user4", false, "18324799999"));

}

实现效果如下:

4. 表格基本属性设置

(1)行头和列头是否显示

效果如下:

(2)禁止用户添加行、删除行,允许用户修改行大小和列大小:

效果如下:

(3)取消默认选中第一个,在Form1_Load()中添加清除代码:

// 取消表格选中
dataGridView1.Rows[0].Selected = false;

效果如下:

5. 删除表格中的行

删除某一行可以使用如下API(清空第一行):

dataGridView1.Rows.RemoveAt(0);

删除全部需要先获取总行数,然后依次删除:

int count = this.dataGridView1.Rows.Add(); //得到当前控件的行数
for (int i = 0; i < count + 1; i++)
{
   dataGridView1.Rows.RemoveAt(0);
}

6. 获取表格中的数据

获取某行指定单元格的数据:

int i = dataGridView1.CurrentRow.Index;
textBox.Text = dataGridView2.Rows[i].Cells[0].Value.ToString()

获取当前用户选中单元格的数据:

dataGridView1.CurrentCell.Value.ToString();

二、表格的高级用法

表格中的列可以选择Checkbox、Button等。

(1)ButtonColumn

也可以使用代码添加列:

DataGridViewButtonColumn btn_column = new DataGridViewButtonColumn();
 btn_column.UseColumnTextForButtonValue = true;    //允许按钮上显示文字
 btn_column.Text = "下单";                        //按钮上的文字属性
 btn_column.HeaderText = "操作";                  //显示的列名
 dataGridView1.Columns.Add(btn_column);

效果如下:

(2)CheckboxColummn

通过代码添加:

DataGridViewCheckBoxColumn check_box_column = new DataGridViewCheckBoxColumn();
check_box_column.HeaderText = "选择";                  //显示的列名
dataGridView1.Columns.Add(check_box_column);

  • 6
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值