化学分析機器のシーケンスコンバータを作成しました。各行をオブジェクトとして扱い、そのオブジェクトの各フィールドを別のオブジェクトとして扱います。行がリストに追加されるとき、私は注文番号付けのようないくつかのフィールドオブジェクトでいくつかの更新を行う必要があるので、その行内の各フィールドオブジェクトを指すデリゲートを実装しました。この問題は、行オブジェクトを複製しようとすると、デリゲートが元のオブジェクトを指していて、フィールドメンバを更新するだけで発生します。私は、クローン上のリスナーの登録を解除し、それを元に戻そうとしましたが、元のオブジェクトでコードを実行しています。すべてのリスナーの登録を解除してから、クローンを作成して元のクローンとクローンに登録する必要がありますか?これを行う最善の方法は何ですか?内部デリゲートを使ってオブジェクトをクローンする方法
2番目の質問:Delegate.RemoveAll関数を使用しようとしましたが、何を渡すべきかを特定できませんでした。ターゲットとメソッドを代理人といいます。それを使った人はいますか?
ベストプラクティス:ここでは代議員を避けてください。 –
これはDataTableオブジェクトが必要なように聞こえますか? –