zoukankan      html  css  js  c++  java
  • DataGridView获取或者设置当前单元格的内容

    当前单元格指的是DataGridView焦点所在的单元格,它可以通过DataGridView对象的CurrentCell属性取得。如果当前单元格不存在的时候,返回null。

    取得当前单元格的内容:

    object obj = this.dgv_PropDemo.CurrentCell.Value;

    注:返回值是object类型的。

    取得当前单元格的列Index:

    int columnIndex = this.dgv_PropDemo.CurrentCell.ColumnIndex;

    取得当前单元格所在的行的Index:

    int rowIndex= this.dgv_PropDemo.CurrentCell.RowIndex;

    另外,使用DataGridView.CurrentCellAddress属性来确定单元格所在的行:

    int row= this.dgv_PropDemo.CurrentCellAddress.Y;

    列:

    int column = this.dgv_PropDemo.CurrentCellAddress.X;

    注:DataGridView的行和列的索引都是从0开始的。

    当前的单元格可以通过设定DataGridView对象的CurrentCell来改变。

    DataGridView1.CurrentCell=DataGridView1[int columnIndex,int rowIndex];

    注:如果DataGridVIew的选中模式是行选择,那么会选中当前单元格所在的整行。否则只会选中设置的当前单元格。

    将CurrentCell设置为Null可以取消激活的当前单元格。

    示例:设置第一行第二列为当前的CurrentCell

    this.dgv_PropDemo.CurrentCell = this.dgv_PropDemo[1, 0];

    示例:通过向上和向下实现遍历DataGridView

    /// <summary>
            /// 向上遍历
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btn_Up_Click(object sender, EventArgs e)
            {
                //获取上一行的索引
                int upRowIndex = this.dgv_PropDemo.CurrentCell.RowIndex - 1;
                if (upRowIndex < 0)
                {
                    //选中最后一行
                    this.dgv_PropDemo.CurrentCell = this.dgv_PropDemo[0, this.dgv_PropDemo.RowCount - 1];
                }
                else
                {
                    this.dgv_PropDemo.CurrentCell = this.dgv_PropDemo[0, upRowIndex];
                }
            }
    
            /// <summary>
            /// 向下遍历
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btn_Down_Click(object sender, EventArgs e)
            {
                 //获取下一行的索引
                int nextRowIndex = this.dgv_PropDemo.CurrentCell.RowIndex + 1;
                if (nextRowIndex > this.dgv_PropDemo.RowCount - 1)
                {
                    this.dgv_PropDemo.CurrentCell = this.dgv_PropDemo[0, 0];
                }
                else
                {
                    this.dgv_PropDemo.CurrentCell = this.dgv_PropDemo[0, nextRowIndex];
                }
            }
  • 相关阅读:
    Kafka写入流程和副本策略
    Kafka消费分组和分区分配策略
    Kafka安装和常用操作命令
    面试:谈谈你对大数据的理解
    HDFS写数据和读数据流程
    java笔记之分支、循环语句
    java笔记之分支、循环语句
    java笔记之运算符
    java笔记之运算符
    java笔记之java内存结构
  • 原文地址:https://www.cnblogs.com/liuqifeng/p/9149760.html
Copyright © 2011-2022 走看看