• DataGridView常用属性 《一》




    只读属性设定
            datagridview.ReadOnly = True

            行自动追加
            datagridview.AllowUserToAddRows = False

            删除行允许
            datagridview.AllowUserToDeleteRows = False

            行幅设置
            datagridview.AllowUserToResizeRows = False
          datagridview.ColumnHeadersHeightSizeMode =DataGridViewColumnHeadersHeightSizeMode.DisableResizing

            行表示
            datagridview.RowHeadersVisible = False

            行选择模式
            datagridview.SelectionMode = DataGridViewSelectionMode.FullRowSelect

            复数行选择
            datagridview.MultiSelect = True

            选择状态解除
            datagridview.ClearSelection()

            文字设置位置
            datagridview.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter

            选择后行的颜色
            datagridview.DefaultCellStyle.SelectionBackColor = Color.GreenYellow
            datagridview.DefaultCellStyle.SelectionForeColor = Color.Black

            行幅自动调整
            datagridview.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill 

    DataGridView常用属性、方法
    1、自定义列
    Customize Cells and Columns in the Windows Forms DataGridView Control by Extending Their
    Behavior and Appearance
    Host Controls in Windows Forms DataGridView Cells
    继承 DataGridViewTextBoxCell 类生成新的Cell类,然后再继承 DataGridViewColumn 生成新的Column类,并指定
    CellTemplate为新的Cell类。新生成的Column便可以增加到DataGridView中去。
    2、自动适应列宽
    Programmatically Resize Cells to Fit Content in the Windows Forms DataGridView Control
    Samples:
    DataGridView.AutoSizeColumns(
    DataGridViewAutoSizeColumnCriteria.HeaderAndDisplayedRows);
    DataGridView.AutoSizeColumn(
    DataGridViewAutoSizeColumnCriteria.HeaderOnly,
    2, false);
    DataGridView.AutoSizeRow(
    DataGridViewAutoSizeRowCriteria.Columns,
    2, false);
    DataGridView.AutoSizeRows(
    DataGridViewAutoSizeRowCriteria.HeaderAndColumns,
    0, dataGridView1.Rows.Count, false);
    3、可以绑定并显示对象
    Bind Objects to Windows Forms DataGridView Controls
    4、可以改变表格线条风格
    Change the Border and Gridline Styles in the Windows Forms DataGridView Control
    Samples:
    this.dataGridView1.GridColor = Color.BlueViolet;
    this.dataGridView1.BorderStyle = BorderStyle.Fixed3D;
    this.dataGridView1.CellBorderStyle = DataGridViewCellBorderStyle.None;
    this.dataGridView1.RowHeadersBorderStyle = DataGridViewHeaderBorderStyle.Single;
    this.dataGridView1.ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.Single;
    5、动态改变列是否显示,和动态改变列的显示顺序
    Change the Order of the Columns in the Windows Forms DataGridView Control
    Samples:
    customersDataGridView.Columns["CustomerID"].Visible = false;
    customersDataGridView.Columns["ContactName"].DisplayIndex = 0;
    customersDataGridView.Columns["ContactTitle"].DisplayIndex = 1;
    customersDataGridView.Columns["City"].DisplayIndex = 2;
    customersDataGridView.Columns["Country"].DisplayIndex = 3;
    customersDataGridView.Columns["CompanyName"].DisplayIndex = 4;
    6、可以在列中显示图像
    Display Images in Cells of the Windows Forms DataGridView Control
    Samples:
    Icon treeIcon = new Icon(this.GetType(), "tree.ico");
    DataGridViewImageColumn iconColumn = new DataGridViewImageColumn ();
    iconColumn.Image = treeIcon.ToBitmap();
    iconColumn.Name = "Tree";
    iconColumn.HeaderText = "Nice tree";
    dataGridView1.Columns.Insert(2, iconColumn);
    7、格式化显示内容:
    Format Data in the Windows Forms DataGridView Control
    Samples:
    this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle.Format = "c";
    this.dataGridView1.Columns["ShipDate"].DefaultCellStyle.Format = "d";
    this.dataGridView1.DefaultCellStyle.NullValue = "no entry";
    this.dataGridView1.DefaultCellStyle.WrapMode = DataGridViewWrapMode.Wrap;
    this.dataGridView1.Columns["CustomerName"].DefaultCellStyle.Alignment =
    DataGridViewContentAlignment.MiddleRight;
    8、在拖动列的滚动条时可以将指定的列冻结
    Freeze Columns in the Windows Forms DataGridView Control
    Samples:将指定列及以前的列固定不动
    this.dataGridView1.Columns["AddToCartButton"].Frozen = true;
    9、获取选择的单元格,行,列
    Get the Selected Cells, Rows, and Columns in the Windows Forms DataGridView Control
    Samples:
    见msdn。
    10、显示录入时出现的错误信息
    Handle Errors that Occur During Data Entry in the Windows Forms DataGridView Control
    Samples:
    private void dataGridView1_DataError(object sender,
    DataGridViewDataErrorEventArgs e)
    {
    // If the data source raises an exception when a cell value is
    // commited, display an error message.
    if (e.Exception != null &&
    e.Context == DataGridViewDataErrorContext.Commit)
    {
    MessageBox.Show("CustomerID value must be unique.");
    }
    }
    11、大数据量显示采用Virtual Mode
    Implement Virtual Mode in the Windows Forms DataGridView Control
    12、设置指定的列只读
    Make Columns in the Windows Forms DataGridView Control Read-Only
    Samples:
    dataGridView1.Columns["CompanyName"].ReadOnly = true;
    13、移去自动生成的列
    Remove Autogenerated Columns from a Windows Forms DataGridView Control
    Sample:
    dataGridView1.AutoGenerateColumns = true;
    dataGridView1.DataSource = customerDataSet;
    dataGridView1.Columns.Remove ("Fax");
    或:
    dataGridView1.Columns["CustomerID"].Visible = false;
    14、自定义选择模式
    Set the Selection Mode of the Windows Forms DataGridView Control
    Sample:
    this.dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
    this.dataGridView1.MultiSelect = false;
    15、自定义设定光标进入单元格是否编辑模式(编辑模式)
    Specify the Edit Mode for the Windows Forms DataGridView Control
    this.dataGridView1.EditMode = DataGridViewEditMode.EditOnEnter;
    16、新行指定默认值
    Specify Default Values for New Rows in the Windows Forms DataGridView Control
    Sample:
    private void dataGridView1_DefaultValuesNeeded(object sender, System.Windows.Forms.DataGridViewRowEventArgs e)
    {
    e.Row.Cells["Region"].Value = "WA";
    e.Row.Cells["City"].Value = "Redmond";
    e.Row.Cells["PostalCode"].Value = "98052-6399";
    e.Row.Cells["Region"].Value = "NA";
    e.Row.Cells["Country"].Value = "USA";
    e.Row.Cells["CustomerID"].Value = NewCustomerId();
    }
    17、数据验证
    Validate Data in the Windows Forms DataGridView Control
    Samples:
    private void dataGridView1_CellValidating(object sender,
    DataGridViewCellValidatingEventArgs e)
    {
    // Validate the CompanyName entry by disallowing empty strings.
    if (dataGridView1.Columns[e.ColumnIndex].Name == "CompanyName")
    {
    if (e.FormattedValue.ToString() == String.Empty)
    {
    dataGridView1.Rows[e.RowIndex].ErrorText =
    "Company Name must not be empty";
    e.Cancel = true;
    }
    }
    }
     

    1 行、列的隐藏

    [VB.NET]
    ' DataGridView1的第一列隐藏
    DataGridView1.Columns(0).Visible = False
    ' DataGridView1的第一行隐藏
    DataGridView1.Rows(0).Visible = False

    2 行头、列头的隐藏

    [VB.NET]
    列头隐藏
    DataGridView1.ColumnHeadersVisible = False
    行头隐藏
    DataGridView1.RowHeadersVisible = False

    3 行和列的删除

    [VB.NET]
    ' 删除名为"Column1"的列
    DataGridView1.Columns.Remove("Column1")
    ' 删除第一列
    DataGridView1.Columns.RemoveAt(0)
    ' 删除第一行
    DataGridView1.Rows.RemoveAt(0)

    4 删除选中行

    [VB.NET]
    For Each r As DataGridViewRow In DataGridView1.SelectedRows
        
    If Not r.IsNewRow Then
            DataGridView1.Rows.Remove(r)
        
    End If
    Next

    DataGridView 禁止列或者行的Resize

    1 禁止所有的列或者行的Resize

    [VB.NET]
    ' 禁止用户改变DataGridView1的所有列的列宽
    DataGridView1.AllowUserToResizeColumns = False

    '禁止用户改变DataGridView1の所有行的行高
    DataGridView1.AllowUserToResizeRows = False

  • 相关阅读:
    20145321《网络对抗技术》逆向与Bof基础
    20145321 《信息安全系统设计基础》课程总结
    20145319 《网络渗透》免考-恶意代码隐藏相关技术
    20145319 《网络渗透》免考—逆向脱壳技术
    20145319 《网络渗透》免考—病毒感染
    20145319 《网络渗透》免考—进程隐藏
    20145319 《网络渗透》免考—远程注入
    20145319 《网络渗透》免考—API拦截技术
    20145319 《网络渗透》免考—任务栏隐藏
    20145319 《计算机病毒》实践三
  • 原文地址:https://www.cnblogs.com/Fooo/p/1266588.html
Copyright © 2020-2023  润新知