C#开发WinForm之DataGridView开发

前言

DataGridView是开发Winform的一个列表展示,类似于表格。学会下面的基本特征用法,再辅以经验,基本功能开发没问题。

1.设置 DataGridView表格行首为序号索引,


        //设置 DataGridView表格行首为序号索引
        private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
        {

            //DataGridView中实现自动编号
            Rectangle rectangle = new Rectangle(e.RowBounds.Location.X, e.RowBounds.Location.Y, dataGridView1.RowHeadersWidth - 4, e.RowBounds.Height);
            TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(), dataGridView1.RowHeadersDefaultCellStyle.Font, rectangle, dataGridView1.RowHeadersDefaultCellStyle.ForeColor, TextFormatFlags.VerticalCenter | TextFormatFlags.Right);



        }

DataGridView添加复选框

        public void AddCheckBox(DataGridView dataGridView1)

        {

            //为dataGridView1增加复选框列
            DataGridViewCheckBoxColumn checkbox = new DataGridViewCheckBoxColumn();
            //列显示名称
            checkbox.HeaderText = "选择";
            checkbox.Name = "IsChecked";
            checkbox.TrueValue = true;
            checkbox.FalseValue = false;
            checkbox.DataPropertyName = "IsChecked";
            //列宽
            checkbox.Width = 50;
            //列大小不改变
            checkbox.Resizable = DataGridViewTriState.False;
            //添加的checkbox在dataGridView1第一列
            dataGridView1.Columns.Insert(0, checkbox);



            // 设置 dataGridView1 为只读
            //dataGridView1.ReadOnly = true;
            //dataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically;


            // 设置用户不能手动给 DataGridView1 添加新行
            dataGridView1.AllowUserToAddRows = false;

            // 设定包括Header和所有单元格的列宽自动调整
            dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;

            // 设定包括Header和所有单元格的行高自动调整
            dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;

            // 1) 列冻结 DataGridViewColumn.Frozen 属性为 True 时,该列左侧的所有列被固定,横向滚动时固定列不随滚动条滚动而左右移动。这对于重要列固定显示很有用。 
            // DataGridView1的左侧2列固定
            // dataGridView1.Columns[1].Frozen = true;

            //2) 行冻结DataGridViewRow.Frozen 属性为 True 时,该行上面的所有行被固定,纵向滚动时固定行不随滚动条滚动而上下移动。
            // DataGridView1 的上1行固定
            //dataGridView1.Rows[0].Frozen = true;



        }

C#开发WinForm之DataGridView开发_第1张图片

你可能感兴趣的:(c#)