как обновить мой DataGridVIew, не останавливая выполнение кода - PullRequest
0 голосов
/ 10 июля 2019

У меня есть таблица BOOK, которая содержит (идентификатор, имя, цена ...). Я хочу отредактировать цену книги и хочу, чтобы новая цена автоматически отображалась в виде сетки данных, пока код работает, как Могу ли я сделать это с помощью потоков, у меня нет проблем с извлечением данных из базы данных, я хочу, чтобы DataGridView обновлялся автоматически после изменения цены книги на SQL-сервере, и я хочу, чтобы это происходило без остановки кода и запуска это снова или с помощью кнопки обновления, я хочу сделать это с помощью потоков.

1 Ответ

0 голосов
/ 10 июля 2019

Самое простое решение - использовать таймер (https://docs.microsoft.com/de-de/dotnet/api/system.timers.timer?view=netframework-4.8), который обновляет ваш datagridview.datasource.

Имейте в виду, что это заменит все строки. Если вы хотите, чтобы пользователь не видел, что вы можете вызвать .SuspendLayout (), выполните обновление, а затем вызовите .ResumeLayout.

Лучшее решение: - используйте BindingList в качестве источника данных DataGridView - использовать таймер, который получает только обновленные объекты из базы данных и заменяет их в BindingList - благодаря BindingList DataGridView будет автоматически знать, какие объекты были изменены, и будет перерисовывать только эти строки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...