当前单元格指的是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 - ;
if (upRowIndex < )
{
//选中最后一行
this.dgv_PropDemo.CurrentCell = this.dgv_PropDemo[, this.dgv_PropDemo.RowCount - ];
}
else
{
this.dgv_PropDemo.CurrentCell = this.dgv_PropDemo[, 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 + ;
if (nextRowIndex > this.dgv_PropDemo.RowCount - )
{
this.dgv_PropDemo.CurrentCell = this.dgv_PropDemo[, ];
}
else
{
this.dgv_PropDemo.CurrentCell = this.dgv_PropDemo[, nextRowIndex];
}
}

DataGridView获取或者设置当前单元格的内容的更多相关文章

  1. DataGridView使用技巧一:获取或设置当前单元格的内容

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

  2. C#中的Excel操作【1】——设置Excel单元格的内容,打开Excel文件的一种方式

    前言 作为项目管理大队中的一员,在公司里面接触最多的就是Excel文件了,所以一开始就想从Excel入手,学习简单的二次开发,开始自己的编程之路! 程序界面 功能说明 打开文件按钮,可以由使用者指定要 ...

  3. wpf 获取DataGrid某一个单元格,设置此单元格ToolTip内容和背景颜色

    public void GetCell()        {            for (int i = 0; i < this.datagrid1.Items.Count; i++)    ...

  4. DataGridView中实现点击单元格Cell动态添加自定义控件

    场景 鼠标点击DataGridView的某个单元格时,此单元格添加一个自定义的控件,这里以 添加下拉框为例 效果 注: 博客主页: https://blog.csdn.net/badao_liuman ...

  5. DataGridView中EnditCommit()调用之后,单元格的内容被全选了,每次输入都要鼠标点击定位到最后才能继续输入

    因为某些需求,DataGridView在输入一次内容,就要调用ECommitEdit(DataGridViewDataErrorContexts.Commit)来将内容提交,但是这样做之后,控件就会当 ...

  6. c#DataGridView数据绑定示例——格式化单元格的内容(转)

    转自http://blog.csdn.net/testcs_dn/article/details/37834063 c#DataGridView数据绑定示例 格式化单元格的内容 在使用DataGrid ...

  7. selenium获取html的表格单元格数据

    获取网页的表格的某个单元格的值,思路: 1.获取表格 2.获取表格的所有行 3.根据某一行获取该行的所有列 4.根据某一列获得该行该列的单元格值 根据以上思路,可以知道,只需要行.列就可以得到单元格的 ...

  8. POI按照源单元格设置目标单元格格式

    原文:http://jjw198874.blog.163.com/blog/static/1889845522011102401854234/ POI按照源单元格设置目标单元格格式 poi按照一个源单 ...

  9. GridControl 设置焦点单元格

    gdvNew.Focus(); //GridControl 控件获取焦点 gdvNew.FocusedRowHandle = _smtReport.Count - 1; //设置焦点行 gdvNew. ...

随机推荐

  1. django----Form详细信息

    Form类: 创建Form类时,主要涉及到 [字段] 和 [插件],字段用于对用户请求数据的验证,插件用于自动生成HTML; Django内置字段 Field required=True, 是否允许为 ...

  2. jquery----jquery中的属性的利用

    1.javascript addClass 利用document.getElementById("XX")找到document对象.然后再通过addClass("xxx& ...

  3. CF508E

    贪心题是很有趣的... 首先,本题为括号匹配问题,那么可以考虑进行栈模拟 然后,我们思考一下如何匹配:虽然题目中仅对右括号的位置提出了区域性要求,但可以发现,对能匹配上的栈顶括号立刻进行匹配一定是一种 ...

  4. animate方法使用总结

    <!DOCTYPE html><html lang="en" class="loading"><head> <meta ...

  5. Tensorflow 损失函数及学习率的四种改变形式

    Reference: https://blog.csdn.net/marsjhao/article/details/72630147 分类问题损失函数-交叉熵(crossentropy) 交叉熵描述的 ...

  6. C# 不使用递归遍历目录树中的文件和文件夹

    public class StackBasedIteration { static void Main(string[] args) { // Specify the starting folder ...

  7. python的相关基本操作

    1.安装第三方库:pip install requests 2.升级:pip install --upgrade library_name 3.升级所有已安装的库: pip list --outdat ...

  8. svn_linux + apache 实现网页访问svn

    CentOS7:搭建SVN + Apache 服务器实现网页访问 1. 安装httpd 安装httpd服务: $ sudo yum install httpd 检查httpd是否安装成功: $ htt ...

  9. 【C++ Primer | 03】字符串、向量和数组

    博客链接: c++ 中 const_iterator 和 const vector<>::iterator的区别 const vector <int> ::iterator和v ...

  10. Android之Error: 'L' is not a valid file-based resource name character解决办法

    1.问题 Error:Execution failed for task ':mergeBYODReleaseResources'.> /home/chenyu/Android_dev/sang ...