2016-07-14 12 views
0

setterのすべてのプロパティに対してPropertyChanged(System.ComponentModel)を呼び出さずにプロパティの値の変更を見る可能性がありますか?プロパティの設定値を確認する

私はTimerで自分のプロパティを見てみましたが、パフォーマンスには不必要な悪影響があり、遅すぎます(実行ごとに15ms)。

+0

短答:いいえ。 – Jamiec

+0

[Fody.PropertyChanged](https://github.com/Fody/PropertyChanged)のようないくつかのIL製織を使用して、プロパティ変更の実装を自動的に作成することができます。 –

+0

なぜこれが必要ですか?通常、プロパティにはgetterとsetterがあります。したがって、値が変更されるタイミングを正確に知ることができます。誰も価値を変えない限り、それは変わらないはずです。それ以外の場合は、PropertyChangedというイベントを使用します。 – HimBromBeere

答えて

1

コメントに基づいて、自動的にINotifyPropertyChangedをクラスに追加します。これは、いくつかの方法で実現できます。ここで

がリストの一部です: RoslynFodyCastlePostSharpSpring.Netなど

いずれかを選択するには、あなたの要件を定義する必要があります。 動的プロキシ\ AOPが必要な場合、またはIL製織で行う場合、またはVS内でコードを修正して追加する場合。

+0

Roslynはうまく聞こえます。これは、VSがすでに実装しているためです。 AFAIKは他のすべての第三者図書館ですよね?次に、それがRoslynでどのように実現できるかを理解する次のステップになります... – c0d3b34n

関連する問題