码迷,mamicode.com
首页 > Windows程序 > 详细

DataGridView获取或者设置当前单元格的内容

时间:2018-06-07 14:12:00      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:obj   焦点   opd   his   res   sum   add   返回值   demo   

当前单元格指的是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];
            }
        }

 

DataGridView获取或者设置当前单元格的内容

标签:obj   焦点   opd   his   res   sum   add   返回值   demo   

原文地址:https://www.cnblogs.com/liuqifeng/p/9149760.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!