2013-06-25 5 views
0

Мне нужно получить информацию, которая находится в каждой ячейке, расположенной в представлении datagrid строк, которые пользователь выбирает. У меня есть выбор строк вниз, мне просто нужна помощь в получении информации в ячейке. Сейчас он просто возвращается как DataGridVewRow { Index=7}, когда данные действительно являются строкой. Вот моя функцияПолучение информации из DataGridView

Private Function getCoordinates() 
    Dim dt As New DataTable 
    Dim dt2 As New DataTable 
    'Dim r As DataRow 
    Dim n As Integer = 0 
    Dim selectedItems As DataGridViewSelectedRowCollection = dgv.SelectedRows 
    dt = dgv.DataSource 
    dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect 
    dgv.MultiSelect = True 
    Dim i = dgv.CurrentRow.Index 




    dt2.Columns.Add("Position") 
    Try 

     If selectedItems Is Nothing Then 
      For n = 0 To dt.Rows.Count - 1 
       dt2.Rows.Add(n) 
       dt2.Rows(n)("Position") = dt.Rows.Item(n)("Mouse Position") 
      Next 

     Else 

      For Each selectedItem As DataGridViewRow In selectedItems 


       dt2.Rows.Add(selectedItem) 
       dt2.Rows(selectedItem.Index)("Position") = dt.Rows.Item(selectedItem.Index)("Mouse Position") 

      Next 
     End If 

    Catch ex As Exception 
     MsgBox("Error", MsgBoxStyle.Exclamation, "Error!") 
    End Try 


    Return dt2 


End Function 

ответ

1

Вы получаете текст ячеек через свойство Ячейки DataGridViewRow. В следующем примере получить текст из первой ячейки в каждой выбранной строке:

Dim strContents As String = String.Empty 

For Each selectedItem As DataGridViewRow In selectedItems 

    strContents += " First Cell's Text: " & selectedItem.Cells(0).Text 

Next 
+0

Вы также можете перебрать все ячейки с помощью «For Each objCell As DataGridViewCell В selectedItems.Cells». – N0Alias

+0

Большое спасибо, вы исправили эту проблему, теперь, однако, я получаю еще одну ошибку -_- – bbesase