0

カスタムEventArgsクラス内の選択した変数のみを更新できますか、それともすべてを同時に更新する必要がありますか?たとえば、このメソッドが呼び出された場合:

 public void updateEvents(string var1, string var2, string var3)
 {
     // reference a custom EventArg class
     TraderEventArgs t = new TraderEventArgs(var1, var2, var3);
 }

<修正済み; 上記は、メソッド呼び出しを使用してEventArgsを更新するための誤った構文であることが指摘されています。つまり、「new」キーワードは、更新されていない新しいEventArgです...これは疑問を投げかけます。完全または部分的に呼び出す(すべてではなく一部の変数のみ)...>

更新したくない変数を省略できますか..'TraderEventArgs(,, var3)??

または、TraderEventArgs.var1とTraderEventArgs.var2を空のままにしますか?

これは、複数のEventArgsクラスを作成する必要があるかどうか、またはすべての(場合によっては無関係な)無関係なデータを1つのカスタムEventArgsクラスにまとめて保存できるかどうかに関する質問です。

訂正:他の無関係なデータと同時に更新される場合とされない場合がある1つのイベント引数クラスに、いつか無関係なデータを一緒に格納することが可能かどうかを尋ねています...以前はそれについて明確ではなかったかもしれません..。。

4

1 に答える 1

1

あなたがこれを意味するならば:

new TraderEventArgs(,,var3) 

それは単に無効な構文です。

ここで新しい変数を宣言し( )、新しいオブジェクトtを作成していることに注意してください。私たちが見る限り、変更する「既存の」オブジェクトはありません。あなたは変数の更新について話しますが、それは呼び出しを通しては起こりません。new

編集:TraderEventArgsクラスが表示されたので、まったく更新できないことはかなり明らかです。プロパティPriceSharesプロパティはどちらも読み取り専用です(ゲッターはありますがセッターはありません)。既存のインスタンスの価格とシェアを変更する方法はありません。もちろん、クラスを変更できる可能性があります(変更するのがあなたの場合)...または、新しいインスタンスを作成して、現在古いインスタンスへの参照があるものに、代わりに新しいインスタンスを使用するように指示できる場合があります。何が起こっているのかについてのより多くの情報がなければ、私たちはまだ本当に言うことができません。

リンクされた投稿から、あなたは一般的にイベント引数のポイントを見逃していると思います:それらは通常、イベントを発生させるものによって提供されます。イベント発生コード(たとえば、ボタンタイプのクリックコード)がカスタムイベント引数について何も知らない場合は、それらを単にクローバーすることはできません。

于 2011-03-23T17:17:33.953 に答える