Управление Threads в DataGridView в VB .net

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

Проблема состоит в том, что я расположен с thread не блокировать GUI, и с этого thread я удаляю и добавляю линии. Однако, после прошлых некоторых, система бросает мне "NullReferenceException".

Это мой код:

     Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
                Dim wreturnCode1 As Integer = System.Threading.ThreadPool.QueueUserWorkItem(New System.Threading.WaitCallback(AddressOf RepeatAction), cancellation.Token)
        End Sub

        Private Sub RepeatAction(ByVal obj As Object)
            Dim token As System.Threading.CancellationToken = CType(obj, System.Threading.CancellationToken)
            FormTimer.Enabled = True
            AddHandler FormTimer.Elapsed, AddressOf AutoTaskRepo
       End Sub

       Private Async Sub AutoTaskRepo()
        FormTimer.Enabled = False
        DataGridView1.Rows.Clear()
        DataGridView1.Rows.Add()
        DataGridView1.Rows.Add()
        DataGridView1.Rows.Add()
        DataGridView1.Rows.Add()
        DataGridView1.Rows.Add()
        DataGridView1.Rows.Add()
        FormTimer.Enabled = True

   End Sub

Это ошибка:

Не проконтролированное исключение типа 'System. NullReferenceException' в System.Windows.Forms.dll

Добавочная информация: Ссылка на объект, не установленная как инстанция объекта.

Algúna решение?
Я не могу продвигаться с этим.

1
задан 28.12.2016, 22:12
0 ответов

Пробуй с этим кодом:

DataGridView1.update()
DataGridView1.refresh()

Сделав любое изменение в grid.

В какой-то точке grid он остается без rows ты пробуешь соглашаться, или нечто похожее, лучшее будет состоять в том, чтобы обновлять это после каждого действия.

1
ответ дан 03.12.2019, 17:57

Теги

Похожие вопросы