2013-10-07 29 views
0

我在vb.net有三列搜索coresponding值datadgridview vb.net

在第一一個DataGridView是一個產品的描述,在第二被一個產品號,並在一個第三價格

我想按產品編號在datagridview中搜索並返回價格列中的相應值。

我能夠在datagridviews中搜索文本,但在當前無法讀取相應單元格的值(例如價格單元格)。

因此,要回顧一下,我想要搜索的產品數量,但返回的產品價格(存儲在進一步使用一個變量)

我使用vb.net

EDDIT:

Private Sub Button33_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button33.Click 
    Dim rowindex As String 
    For Each row As DataGridViewRow In DataGridView1.Rows 
     If row.Cells.Item("ITEM_ID").Value = TextBox5.Text Then 
      rowindex = row.Index.ToString() 

      Dim actie As String = row.Cells("PRICE").Value.ToString() 
      MsgBox(actie) 

     Else 

      MsgBox("Item not found") 

     End If 
    Next 
End Sub 
+0

這應該不難以解決,我只是想知道datagridview如何獲取值,以及如何通過它進行搜索。 – WozzeC

+0

看到編輯我確實管理以下,但我的其他人不斷重複搜索列的數量..如果該項目沒有找到將是相當厭惡後100列 –

回答

2

好的,謝謝代碼更新。這樣做:

Private Sub Button33_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button33.Click 
    Dim rowindex As String 
    Dim found as Boolean = false 
    For Each row As DataGridViewRow In DataGridView1.Rows 
     If row.Cells.Item("ITEM_ID").Value = TextBox5.Text Then 
      rowindex = row.Index.ToString() 
      found = true 
      Dim actie As String = row.Cells("PRICE").Value.ToString() 
      MsgBox(actie) 
      Exit for 
     End If 
    Next 
    If Not found Then 
     MsgBox("Item not found") 
    End if  
End Sub 

這是幹什麼的,它循環所有的項目。當它找到一個匹配時,它發現設置爲真。如果找不到項目,則循環結束時「找到」爲假。如果「找到」爲假,則顯示「找不到物品」。希望你明白,否則請問:)