1
BackgroundworkerのIF文でコンボボックスの値を取得しようとしたときに問題があります。私はこのコードを実行しようとBackgroundworkerのcomboBoxの値を取得しようとしたときに "クロススレッド操作が有効でない"例外が発生しました
if (KondisiSaldo.SelectedItem == "Kurang dari...")
{
view.RowFilter = string.Format("[Saldo] < '{0}'", thresholdcas);
view2.RowFilter = string.Format("[Saldo] > '{0}'", thresholdcas);
this.Invoke(new MethodInvoker(delegate
{
ViewDataSaldoGV.DataSource = view;
SaldoUnscheduleGV.DataSource = view2;
}));
}
エラーは有効ではありません
クロススレッド操作を言う:コントロール「KondisiSaldoは」 、それが作成されたスレッド以外のスレッドからアクセス。
誰でも手伝ってもらえますか?
はい、初期化されたプロパティの中にフォームの値を格納し、その値をbackgroundworkerの内部から呼び出すか、またはパラメータとして渡す必要があります。 – Edward
[クロススレッド操作が無効である可能性があります:作成されたスレッド以外のスレッドからアクセスされたコントロール](http://stackoverflow.com/questions/142003/cross-thread-operation-not-valid-control - スレッドより - その他よりアクセス) – Martheen