1

Silverlight にチェックボックス リストがあります。実際には、チェックボックスが入った Telerik rad コンボ ボックスです。

私がやろうとしているのは、「すべて選択」というラベルを付けて、そのリストに最初の項目を追加することです。ユーザーがそのアイテムをクリックすると、リスト内のアイテムが選択または選択解除されます。さらに、ユーザーが項目の選択を解除するときは、「すべて選択」の選択を解除する必要があります。

問題は、リスト内の項目が変更されたときに発生する CheckedItemsChanged イベントがあることです。そのイベント中にリストを変更しようとすると、コレクション変更イベント中にコレクションを変更できないと不平を言います。

これを行う別の方法はありますか?

4

1 に答える 1

0

あなたは次のようなことをしようとしていると思います

void SomeComboBox_CheckedItemsChanged(object sender, SomeEventArgs e)
{
    // Do stuff with checked items in list
}

Dispatcher.BeginInvokeチェックされたアイテムに関連すること、つまり次のようなことを行うと役に立ちますか?

void SomeComboBox_CheckedItemsChanged(object sender, SomeEventArgs e)
{
    Dispatcher.BeginInvoke(() =>
    {
        // Do stuff with checked items in list
    });
}
于 2012-06-30T21:49:55.193 に答える