2014-01-18 5 views
0

В VB2012 у меня есть созданное в качестве исходного кода программное обеспечение для управления студентами с SQL2012. Ниже код используется для удаления выбранной записи из DataGridView при нажатии кнопки DELETE щелкают:Удаление записи из datagridview

Private Sub Delete_Click(sender As Object, e As EventArgs) Handles Delete.Click 
     Dim DelStudent As StudentDataSet1._masterRow 
     DelStudent= CType(CType(StudentmasterBindingSource.Current, DataRowView).Row, StudentDataSet1.Student_masterRow) 
     DelStudent.Delete() 
     Me.Validate() 
     Me.StudentmasterBindingSource.EndEdit() 
     Me.Student_masterTableAdapter.Update(StudentDataSet1.Student_master) 
End Sub 

Но вместо того, чтобы выбранная строка удаляется, первая строка будет удалена. Пожалуйста, помогите ...

+0

Вы можете удалить или обновить базу данных, только обновление набора данных у вас есть, но вы когда-нибудь пытались удалить с базой данных с помощью SQL заявления? Я предлагаю вам использовать SQL-запросы для запроса или выполнения в отношении базы данных и повторной обработки всего, что у вас есть на сетке, в долгосрочной перспективе это должно быть более префиксом, особенно если у вас есть планы использования другого языка сценариев, отличного от VB.NET. SQL остается тем же, какой бы вы ни использовали, в значительной степени. –

ответ

0

Выбранная строка не является актуальной, с точки зрения источника привязки. Вы должны использовать DataGridView.SelectedRows. Каждый из них - DataGridViewRow, и вы должны иметь возможность получить DataGridViewRow.DataBoundItem, направить его на DataRow и использовать Delete.

0

ниже код также полезно

Private Sub btnRemoveItem_Click(sender As Object, e As EventArgs) Handles btnRemoveItem.Click 
     If datagridviewname.SelectedRows.Count > 0 Then 
      For i As Integer = datagridviewname.SelectedRows.Count - 1 To 0 Step -1 
       datagridviewname.Rows.RemoveAt(datagridviewname.SelectedRows(i).Index) 
      Next 
     Else 
      MessageBox.Show("Select Row to remove") 
     End If 
    End Sub 
Смежные вопросы