C#winform DataGridView控件的使用

前言:

这个Demo实现能够在界面里对DataGridView控件中的数据进行添加。

首先:

我们在msdn中可以查看到DataGridView的属性和功能:
MSDN地址

界面:

这里写图片描述
如图:
一个名为information的Groupbox
包含:2个textbox分别用来存放name和bir
两radiobutton 用来选择性别
一个button的Add
右边为DataGridView

核心代码:

在窗体的构造函数 ,添加对DataGridView的初始化操作,代码如下:
初始化效果为将DataGridView分为3列分别存放我们输入的信息。

        public Form1()
        {
            InitializeComponent();
            //设置列数
            dataGridView1.ColumnCount = 3;
            //设置是否显示第一列
            dataGridView1.ColumnHeadersVisible = true;
            DataGridViewCellStyle dataGridViewCellStyle = new DataGridViewCellStyle();
            dataGridViewCellStyle.BackColor = Color.Black;
            dataGridView1.Columns[0].Name = "Name";
            dataGridView1.Columns[1].Name = "Bir";
            dataGridView1.Columns[2].Name = "Sex";
        }

生成一个stduent类:

    public class Stduent
    {
        private string name;
        private string bir;
        private string sex;
        public string Name
        {
            get { return name; }
            set { name = value; }
        }
        public string Bir
        {
            get { return bir; }
            set { bir = value; }
        }
        public string Sex
        {
            get { return sex; }
            set { sex = value; }
        }
    }

由于DataGridView显示的周期为一次程序执行,为了暂存我们输入的数据我们要生成一个成员变量

        /// <summary>
        /// 用来暂储输入的stduent
        /// </summary>
        List<Stduent> stduents = new List<Stduent>();

Add按钮点击事件,将我们输入的信息add进dataGridView1.Rows

        private void button1_Click(object sender, EventArgs e)
        {
            if(textBox1.Text == "" || textBox2.Text == "")
            {
                MessageBox.Show("Information Empty !", "提示!");
                return;
            }
            string name = textBox1.Text;
            string bir = textBox2.Text;
            string sex = "";
            if (radioButton1.Checked) sex = radioButton1.Text;
            else if (radioButton2.Checked) sex = radioButton2.Text;
            else { MessageBox.Show("Check Sex !", "提示!"); return; }
            Stduent stduent = new Stduent()//记录添加的stduent
            {
                Name = name,
                Bir = bir,
                Sex = sex,
            };
            stduents.Add(stduent);//将输入的加入暂存
            dataGridView1.Rows.Clear();//清空 
            foreach(Stduent s in stduents)
            {

                string[] str = new string[] { s.Name, s.Bir, s.Sex };
                dataGridView1.Rows.Add(str);
            }
        }

效果

这里写图片描述

猜你喜欢

转载自blog.csdn.net/define_lin/article/details/80572841