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];
                }
            }
  • 相关阅读:
    Qt之等待提示框(QTimer)
    Qt之等待提示框(QPropertyAnimation)
    FormatUtil类型格式转换
    FirstLetterUtil
    文件上传下载
    file相关的操作,(md5,word转html,复制,删除等)
    SessionListener失败,退出
    JackJson的一些方法
    全局常量
    session用户账号认证(一个用户登陆,踢出前一个用户)
  • 原文地址:https://www.cnblogs.com/liuqifeng/p/9149760.html
Copyright © 2011-2022 走看看