【问题标题】:How to get the value of a cell in a DataGridViewComboBoxColumn如何获取 DataGridViewComboBoxColumn 中单元格的值
【发布时间】:2013-08-27 15:47:18
【问题描述】:

我有一个带有 DataGridViewComboBoxColumn 和 DataGridViewTextBoxColumn 的简单数据网格视图。组合框填充如下:(其中 PNcombo.text 是标准组合框)

  Dim objConn As New SqlConnection(DatabaseConnection.FISSQLConnectionString)
    Dim str1 As New StringBuilder
    str1.Append("SELECT cp.Description, cp.CollectionPointId ")
    str1.Append("FROM CollectionPoints cp INNER JOIN ")
    str1.Append("   Products p ON cp.ProductIdValue = p.ProductId ")
    str1.Append("WHERE p.PartNumber = N'" & Trim(PNcombo.Text) & "'")
    Dim objCommand As SqlCommand = New SqlCommand(str1.ToString, objConn)
    objConn.Open()
    Dim dt As New DataTable
    dt.Load(objCommand.ExecuteReader)

   Dim colDesription As New DataGridViewComboBoxColumn
    With colDesription
        .DataSource = dt
        .DisplayMember = "Description"
        .ValueMember = "Description"
    End With
    Me.DataGridView1.Columns.Add(colDesription)

  Dim colCollectionPoint As New DataGridViewTextBoxColumn
    With colCollectionPoint
        .Name = "CollectioPntId"
        .DataPropertyName = "CollectionPointId"
    End With
    DataGridView1.Columns.Add(colCollectionPoint)

dgv 中的组合框填充正确,但我需要获取关联的“CollectionPointID”并将其放入 dgv 中的文本框中。

从这里我不知道如何获取我从组合框中选择的单元格值。

【问题讨论】:

  • 如果您想从组合框中获取任何值,应该这样做DataGridView1.SelectedRows(0).Cells("Description").Value
  • @Alex - 这就是我想要的。我最终得到了 DataGridView1.CurrentRow.Cells("CollectionPntId").Value ,它工作正常。

标签: vb.net visual-studio-2010 datagridview


【解决方案1】:

我通常引用单元格的 .Value 属性,但您需要将其转换为正确的类型(即示例中的字符串),因为 .Value 的类型为 Object

DirectCast(DataGridView1.SelectedRows(0).Cells("Description").Value, String)

CStr(DataGridView1.SelectedRows(0).Cells("Description").Value)

【讨论】:

  • DataGridView1.SelectedRows(0).Cells("Description").Value.ToString
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-11-25
  • 2019-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多