• 获取 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");
      }
      }
    ---------------------------------
  • 相关阅读:
    Jsp语法、指令及动作元素
    java之Cookie详解
    servlet请求转发、包含以及重定向
    20181114_特性
    20181114_反射_泛型反射
    20181112_反射基础_对象获取
    20181110_wait和async
    20181106_线程之异常_取消_变量_安全Lock
    20181105_线程之Task
    20181104_C#线程之Thread_ThreadPool_使用Thread实现回到和带参数的回调
  • 原文地址:https://www.cnblogs.com/chenbg2001/p/1812057.html
Copyright © 2020-2023  润新知