DBを処理し、ユーザーが処理できるように変更をListViewに書き込むプログラムを作成しています。その後、すべての変更をDBに書き戻すことになっていますが、BGWからListView.ListViewItemCollectionに到達する方法がわかりません。Control.Invoke を使用しようとしましたが、それを機能させるにはまだ十分なスキルがありません。
私が得ているエラーは、作成されていないスレッドからそのコントロールにアクセスできないことを示しています
private delegate void BGOUdate(ListView.ListViewItemCollection lvic);
BGOU = new BGOUdate(ApplyChanges);
bgw1.RunWorkerAsync(lvProducts.Items);
private void bgwSearcher_DoWork(object sender, DoWorkEventArgs e)
{
BGOU(e.Argument as ListView.ListViewItemCollection);
}
private void ApplyChanges(ListView.ListViewItemCollection lvic)
{
...
foreach (ListViewItem item in lvic)
{
...
}
...
}