0

コンストラクターでイベントに登録しています...

_data.WeldDataEvent += WeldDataEvent;

Page Unloaded イベントによって呼び出される Cleanup() メソッドでの登録解除...

_data.WeldDataEvent -= WeldDataEvent;

各場所にブレークポイントを設定しました。ビューを起動すると、一度だけ登録されます。クローズ時に登録解除されます。

しかし、2回目の開始後、2つのイベントが発生しました。3回目の開始後、3つのイベントが発生しました。

イベントが登録解除されない条件はありますか? イベントが登録されていないことを確認する方法はありますか?

フォローアップANTS メモリ プロファイラーを使用すると、ViewModel または View へのホールドアウト参照はありません...したがって、それらがガベージコレクションされていることがわかります...つまり、登録されていないイベントはありません...

4

1 に答える 1

1

シミュレーションクラスを見ると、閉じて再起動するたびに新しいシミュレーターを作成していました。イベントは本物でした。

于 2012-12-07T19:48:01.523 に答える