У меня возникла проблема с обновлением записей в моем документе datagridview. когда я попытался обновить записи в datagridview в форме 2, запись изменится, но datagridview в form1 не будет обновляться, обновление, которое я сделал на записях, остается (постоянно, но только на datagridview 1 в форме 2. оно не будет отображаться на datagridview в форме 1).Записи не обновляются в datagridview
oprdg = datagridview1
по форме 1, приведенный ниже код является кодом для обновления в виде 2
вот мой код:
Private Sub btnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpdate.Click
provider = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source ="
'Change the following to your access database location
dataFile = "C:\Users\DELL\Downloads\ODRNEWSYSTEM\ODRNEWSYSTEM\Database1.accdb"
connString = provider & dataFile
myConnection.ConnectionString = connString
myConnection.Open()
Try
Me.Validate()
Me.OPRBindingSource.EndEdit()
Me.OPRTableAdapter.Update(Me.Database1DataSet.OPR)
MsgBox("Update successful")
myConnection.Close()
Catch ex As Exception
MsgBox("Update failed")
End Try
End Sub
я попробовал некоторый код, как показано ниже кода, но произошла ошибка ,, ошибка указывает на часть «da.fill (dt)». Я забыл, что это за ошибка.
Private Sub RefreshData()
Dim connString As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\DELL\Downloads\ODRNEWSYSTEM\ODRNEWSYSTEM\Database1.accdb"
Dim myConnection As OleDbConnection = New OleDbConnection()
myConnection.ConnectionString = connString
Dim da As New OleDb.OleDbDataAdapter("SELECT OPROffice as [OPROffice], " & _
"ID as [ID], Elements,Objectives, Measures,Baseline_as_of_2013,Target_by_2016,Actual_Accomplishments_2014,Actual_Accomplishments_2015,Actual_Accomplishments_2016,Initiatives " & _
" FROM OPR ORDER BY ID", myConnection)
Dim dt As New DataTable
'fill data to datatable
da.Fill(dt)
'offer data in data table into datagridview
Me.OPRDataGridView.DataSource = dt
Form1.oprdg.DataSource = dt
'close connection
myConnection.Close()
End Sub
вот другой код, который ошибка, как ошибка в коде выше:
Public Sub Gridrefresh(ByVal s As String, ByVal dgv As DataGridView)
Dim dt As New DataTable()
Dim cmd As New OleDbCommand("select * from " + s + "", myConnection)
cmd.CommandType = CommandType.Text
Dim da As New OleDbDataAdapter(cmd)
da.Fill(dt)
OPRDataGridView.DataSource = dt
End Sub
и вот изображение для проблемы в моей системе:
http://i.stack.imgur.com/QgNNq.png
Почему бы не использовать набор данных вместо datatable? – Gino
@Gino, ничего не изменилось bro .. –
Вы скрываете ошибку от себя с помощью этой страшной Try/Catch. – Plutonix