私は、特定の時間ごとにdatagridviewにプログラム的にいくつかの行を追加しています。私はdatagridviewで、オンラインの場合、特定の時間にリポジトリにコミットがどれくらいあるかなど、特定のgithubリポジトリの状態を表示したいと思います。DataGridView.Rows.Clear()とは何ですか?
したがって、タイムアウトが発生すると、DataGridView .Rows.Clear()を呼び出し、更新された情報をリポジトリに追加します。
私のコードはここにある:
Dim ok As Integer = 0
DataGridView1.Rows.Clear()
For Each r As RepoURL In _impControllerBpi.GetReposApi
DataGridView1.Rows.Add(DateTimeOffset.Now, "https://github.com/" + r.GetUsr + "/" + r.GetNomRep, "-", "-", "-")
Next
Dim counter = 1
For Each r As RepoURL In _impControllerBpi.GetReposApi
DataGridView1.Rows.Item(counter - 1).Cells.Item(0).Value = DateTimeOffset.Now
DataGridView1.Rows.Item(counter - 1).Cells.Item(2).Value = "Conectando con GitHub"
ok = Await _impController.getRepoGitHub(r, counter)
If ok = 1 Then
DataGridView1.Rows.Item(counter - 1).Cells.Item(0).Value = DateTimeOffset.Now
DataGridView1.Rows.Item(counter - 1).Cells.Item(2).Value = "Conectado"
Else
DataGridView1.Rows.Item(counter - 1).Cells.Item(0).Value = DateTimeOffset.Now
DataGridView1.Rows.Item(counter - 1).Cells.Item(2).Value = "Repositorio no disponible en GitHub"
End If
counter = counter + 1
Next
Dim wreturnCode As Integer = System.Threading.ThreadPool.QueueUserWorkItem(New System.Threading.WaitCallback(AddressOf RepeatAction), cancellation.Token)
ok = 0
すべてがClear()
せずに正常に動作します。私はいくつかの反復で、行をクリアしたときに、私は最初の行を追加する場合でも、システムは私は
System.NullReferenceException
いくつかの助けスロー? Clear()
は、行のコレクションに割り当てられたメモリを解放しますか?
「F1」(強くお勧めします)を押すと、コレクションがクリアされるという驚くべきことが明らかになります。コレクションをクリアすると、行オブジェクトはありません – Plutonix
はい、すべての行オブジェクトをクリアしてrows.Butを追加すると、システムがNull参照例外をスローすることがあります – lsalvatore
最も重要なことの2つ**常に**エラーについての質問をするときに教えてください:** 1)**どのような正確な行に例外がスローされますか? ** 2)**エラーメッセージは何ですか? –