Обновление таблицы данных Gridview после обновления базы данных

#vb.net #gridview #devexpress #devexpress-windows-ui

#vb.net #gridview #devexpress #devexpress-windows-ui

Вопрос:

У меня есть GidView с bindingdatasource. Таблица данных для GridView заполняется selectstatement через базу данных MySQL.

Данные в Gridview редактируются в форме с некоторыми текстовыми полями и выпадающими списками. Когда я выбираю строку в своем GridView, данные для этой записи можно редактировать. Когда редактирование будет завершено, данные будут обновлены после нажатия кнопки. Данные сохраняются в базе данных правильно, но в моем представлении сетки обновленные данные не видны. Когда я повторно заполняю GridView из базы данных, видимые отредактированные данные видны.

Я попытался вручную отредактировать данные в таблице данных, но затем другие поля в таблице данных не обновляются.

 Dim intTableRow As Integer

        For i As Integer = 0 To table.Rows.Count - 1
            If table.Rows(i)("artikelId") = intArtikelId Then
                intTableRow = i
                Exit For
            End If
        Next

        table.Rows(intTableRow).BeginEdit()
        If Not GridViewArtikelen.GetRowCellValue(intRow, "certificaatId") Is DBNull.Value Then
            table.Rows(intTableRow)("certificaat_geldig_tot") = DateAdd(DateInterval.Year, CDbl(txtGeldigheidsduurCertificaat.Text), table.Rows(intTableRow)("datum_certificaat"))
            ''table.Rows(intTableRow)("geldigheidsduur") = CDec(Val(txtGeldigheidsduur.Text))
            'table.Rows(intTableRow).EndEdit()
        End If
 

Это потому, что я повредил свой datarow таблицы данных или я что-то не так?

Комментарии:

1. Используете ли вы встроенную возможность редактирования GridControl или свою собственную форму редактирования?

2. Я понял это после долгого недоумения. Когда последнее текстовое поле моей формы было сфокусировано, таблица данных GridView не могла быть обновлена правильно. Это значение в поле стало 0. Когда я изменил фокус, прежде чем выполнить updatestatement для базы данных, все шло идеально. Таблица данных была обновлена правильно.

Ответ №1:

Я понял это после долгого недоумения. Когда последнее текстовое поле моей формы было сфокусировано, таблица данных GridView не могла быть обновлена правильно. Это значение в поле стало 0. Когда я изменил фокус, прежде чем выполнить updatestatement для базы данных, все шло идеально. Таблица данных была обновлена правильно.