У меня проблема с моей кнопкой «Обновить», я не знаю, с чего начать обновлять мою базу данных SQL, я использую SSMS Microsoft для создания моей таблицы Subjects, и я также связал ее с моим VS 2010 ULTIMATE, где я перетаскиваю мои table to LINQtoSQL и DATASET, я создал кнопку «Сохранить», которая успешно сохраняет мою базу данных и обновляет мое представление datagridview.Как создать кнопку обновления для базы данных?
[ Private Sub Button18_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
If txtSubjectName.Text = "" Then
ErrorProvider1.SetError(txtSubjectName, "Subject Name Cannot be Empty!")
Exit Sub
ElseIf txtSubSName.Text = "" Then
ErrorProvider2.SetError(txtSubSName, "Subject Short Name Cannot be Empty!")
Exit Sub
End If
Dim db As New EMSDataContext
Dim SaveSubject = From C In db.Subjects
Where C.SubjectName = txtSubjectName.Text
Select C
If SaveSubject.Count <> 0 Then
MsgBox("Subject already exits!!", MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly, "Alart!!")
Exit Sub
Else
Dim SaveNSubject As New Subject With {.SubjectName = txtSubjectName.Text, .ShortName = txtSubSName.Text}
db.Subjects.InsertOnSubmit(SaveNSubject)
db.SubmitChanges()
MsgBox("Subject added successfully!", MsgBoxStyle.Information + MsgBoxStyle.OkOnly, "Information")
End If
Registration_Load(sender, e)
txtSubjectName.Text = ""
txtSubSName.Text = ""
End Sub]
И у меня также есть кнопка Удалить, которая успешно удаляет мои данные из базы данных и обновляет мой DataGridView.
[Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click
Dim A As New EMSDataContext
Dim B = From C In A.Subjects
Where C.ID = Val(DtgvSubject.CurrentRow.Cells(0).Value)
Select C
Try
A.Subjects.DeleteOnSubmit(B.FirstOrDefault)
If MsgBox("Are You Sure to Delete This Record?", MsgBoxStyle.Question + vbYesNo, "Question") = MsgBoxResult.Yes Then
A.SubmitChanges()
MsgBox("Record Deleted Successfully!", MsgBoxStyle.Information + MsgBoxStyle.OkOnly, "Information")
txtSubjectName.Text = ""
txtSubSName.Text = ""
Registration_Load(sender, e)
Else
txtSubjectName.Text = ""
txtSubSName.Text = ""
Registration_Load(sender, e)
End If
Catch ex As Exception
MsgBox("Select a Record First!", MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly, "ALERT!!!")
End Try
If B.Count = 0 Then
MsgBox("Please select list to delete!", MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly, "Alart!!")
End If
End Sub]
Я также создал двойной щелчок события DataGridView ячейки, где я получаю значения ячеек в моей Имя субъекта текстового поля и объекта Краткое название текстового поля, если я дважды щелкнул, который также является преуспевающим.
[ Private Sub DtgvSubject_CellDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DtgvSubject.CellDoubleClick
Try
Dim i As Integer
i = DtgvSubject.CurrentRow.Index
Me.txtSubjectName.Text = DtgvSubject.Item(1, i).Value
Me.txtSubSName.Text = DtgvSubject.Item(2, i).Value
Catch ex As Exception
MsgBox("No Values in the Cells!", MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly, "Alert!!!")
Button17_Click(sender, e)
End Try
End Sub]
Мой вопрос, как я могу создать кнопку Update для моей базы данных после получения значений в текстовые поля и обновлять их, повинуясь изменения и обновить мой DataGridView?
Пожалуйста, ответьте мне, я надеюсь, что мой пост понятно , –