1

「マスター リスト」を 1 つ作成します (BindingList 型が望ましい)。別のクラスには、「マスターリスト」の特定の要素で構成されるサブリストがあります。クラスの各インスタンスには、異なる要素があります。各サブリストを「マスター リスト」と同期させる方法はありますか?

4

2 に答える 2

0

リストを拡張して必要なタイプのリストを作成し、「メイン」リストを更新するたびに同期する複合オブジェクトを追加できます。

Javaで行う方法は次のとおりです。C#でも同じことができますが、正確な構文を覚えていないことはわかっています。もちろん、好きなリストタイプを拡張することもできます。

public class MyList extends ArrayList {
    private List<Object> someOtherList;
    public MyList(){
        super();
    }

    public void setSyncList(List<Object> list){
        someOtherList = list;
    }

    @Override
    public boolean add(Object arg0) {
        boolean b = super.add(arg0);
        someOtherList.add(arg0); // here you can decide what action should be done to the syncList, it might not want to add all elements, same goes for the remove below
        return b;
    }

    @Override
    public boolean remove(Object arg0) {
        boolean b = super.remove(arg0);
        someOtherList.remove(arg0);
        return b;
    }

}
于 2011-12-29T14:30:00.050 に答える
0

おそらく必要なのは ObseravleCollection コレクションです。

詳細については、こちらを参照してください

于 2011-12-29T14:37:30.720 に答える