• 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];
                }
            }
  • 相关阅读:
    2014.5.20知识点学习:void及void指针含义的深刻解析(转载)
    2014.5.20知识点学习:void与void*(转载)
    2014.5.19知识点学习:上下文切换
    编写“全选”按钮来操作大量复选框
    排序算法(冒泡排序,选择排序,插入排序,快速排序)
    算法基础
    Git &GitHub
    flask 上下文管理 &源码剖析
    rest-framework框架的基本组件
    Django的FBV和CB
  • 原文地址:https://www.cnblogs.com/liuqifeng/p/9149760.html
Copyright © 2020-2023  润新知