zoukankan      html  css  js  c++  java
  • 获取 Windows 窗体 DataGridView 控件中选定的单元格、行和列

    获取 DataGridView 控件中选中的单元格

    • 使用 SelectedCells 属性。

      Note注意

      使用 AreAllCellsSelected 方法可避免显示可能具有大量数据的单元格。

      Visual Basic
      Private Sub selectedCellsButton_Click( _
      ByVal sender As Object, ByVal e As System.EventArgs) _
      Handles selectedCellsButton.Click

      Dim selectedCellCount As Integer = _
      dataGridView1.GetCellCount(DataGridViewElementStates.Selected)

      If selectedCellCount > 0 Then

      If dataGridView1.AreAllCellsSelected(True) Then

      MessageBox.Show("All cells are selected", "Selected Cells")

      Else

      Dim sb As New System.Text.StringBuilder()

      Dim i As Integer
      For i = 0 To selectedCellCount - 1

      sb.Append("Row: ")
      sb.Append(dataGridView1.SelectedCells(i).RowIndex _
      .ToString())
      sb.Append(", Column: ")
      sb.Append(dataGridView1.SelectedCells(i).ColumnIndex _
      .ToString())
      sb.Append(Environment.NewLine)

      Next i

      sb.Append("Total: " + selectedCellCount.ToString())
      MessageBox.Show(sb.ToString(), "Selected Cells")

      End If

      End If

      End Sub
      private void selectedCellsButton_Click(object sender, System.EventArgs e)
      {
      Int32 selectedCellCount =
      dataGridView1.GetCellCount(DataGridViewElementStates.Selected);
      if (selectedCellCount > 0)
      {
      if (dataGridView1.AreAllCellsSelected(true))
      {
      MessageBox.Show("All cells are selected", "Selected Cells");
      }
      else
      {
      System.Text.StringBuilder sb =
      new System.Text.StringBuilder();

      for (int i = 0;
      i < selectedCellCount; i++)
      {
      sb.Append("Row: ");
      sb.Append(dataGridView1.SelectedCells[i].RowIndex
      .ToString());
      sb.Append(", Column: ");
      sb.Append(dataGridView1.SelectedCells[i].ColumnIndex
      .ToString());
      sb.Append(Environment.NewLine);
      }

      sb.Append("Total: " + selectedCellCount.ToString());
      MessageBox.Show(sb.ToString(), "Selected Cells");
      }
      }
      }

    获取 DataGridView 控件中选中的行

    • 使用 SelectedRows 属性。若要使用户能够选择行,您必须将 SelectionMode 属性设置为 FullRowSelectRowHeaderSelect

      Visual Basic
      Private Sub selectedRowsButton_Click( _
      ByVal sender As Object, ByVal e As System.EventArgs) _
      Handles selectedRowsButton.Click

      Dim selectedRowCount As Integer = _
      dataGridView1.Rows.GetRowCount(DataGridViewElementStates.Selected)

      If selectedRowCount > 0 Then

      Dim sb As New System.Text.StringBuilder()

      Dim i As Integer
      For i = 0 To selectedRowCount - 1

      sb.Append("Row: ")
      sb.Append(dataGridView1.SelectedRows(i).Index.ToString())
      sb.Append(Environment.NewLine)

      Next i

      sb.Append("Total: " + selectedRowCount.ToString())
      MessageBox.Show(sb.ToString(), "Selected Rows")

      End If

      End Sub
      private void selectedRowsButton_Click(object sender, System.EventArgs e)
      {
      Int32 selectedRowCount =
      dataGridView1.Rows.GetRowCount(DataGridViewElementStates.Selected);
      if (selectedRowCount > 0)
      {
      System.Text.StringBuilder sb = new System.Text.StringBuilder();

      for (int i = 0; i < selectedRowCount; i++)
      {
      sb.Append("Row: ");
      sb.Append(dataGridView1.SelectedRows[i].Index.ToString());
      sb.Append(Environment.NewLine);
      }

      sb.Append("Total: " + selectedRowCount.ToString());
      MessageBox.Show(sb.ToString(), "Selected Rows");
      }
      }

    获取 DataGridView 控件中选中的列

    • 使用 SelectedColumns 属性。若要使用户能够选择列,您必须将 SelectionMode 属性设置为 FullColumnSelectColumnHeaderSelect

      Visual Basic
      Private Sub selectedColumnsButton_Click( _
      ByVal sender As Object, ByVal e As System.EventArgs) _
      Handles selectedColumnsButton.Click

      Dim selectedColumnCount As Integer = dataGridView1.Columns _
      .GetColumnCount(DataGridViewElementStates.Selected)

      If selectedColumnCount > 0 Then

      Dim sb As New System.Text.StringBuilder()

      Dim i As Integer
      For i = 0 To selectedColumnCount - 1

      sb.Append("Column: ")
      sb.Append(dataGridView1.SelectedColumns(i).Index.ToString())
      sb.Append(Environment.NewLine)

      Next i

      sb.Append("Total: " + selectedColumnCount.ToString())
      MessageBox.Show(sb.ToString(), "Selected Columns")

      End If

      End Sub
      private void selectedColumnsButton_Click(object sender, System.EventArgs e)
      {
      Int32 selectedColumnCount = dataGridView1.Columns
      .GetColumnCount(DataGridViewElementStates.Selected);
      if (selectedColumnCount > 0)
      {
      System.Text.StringBuilder sb = new System.Text.StringBuilder();

      for (int i = 0; i < selectedColumnCount; i++)
      {
      sb.Append("Column: ");
      sb.Append(dataGridView1.SelectedColumns[i].Index
      .ToString());
      sb.Append(Environment.NewLine);
      }

      sb.Append("Total: " + selectedColumnCount.ToString());
      MessageBox.Show(sb.ToString(), "Selected Columns");
      }
      }
    ---------------------------------
  • 相关阅读:
    数据仓库--事实表
    Oracle SQL函数pivot、unpivot转置函数实现行转列、列转行
    在Oracle中使用rank()over()排名的问题
    python 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。(用列表推导式)
    pyhton 打印菱形
    三元运算
    Python代码书写规范
    DDT驱动
    使用 JsonPath 完成接口自动化测试中参数关联和数据验证(Python语言)
    数据类型(字典)
  • 原文地址:https://www.cnblogs.com/chenbg2001/p/1812057.html
Copyright © 2011-2022 走看看