は、どのように私はここに匿名メソッドを使用しないように望んだ場合の方法"ダイナミック"イベントサブスクリプションでの匿名メソッドの回避方法?
private void ListenToPropertyChangedEvent(INotifyPropertyChanged source,
string propertyName)
{
source.PropertyChanged += (o, e) =>
{
if (e.PropertyName == propertyName)
MyMagicMethod();
};
}
をリファクタリングだろうか?
ここでのトリックは、匿名のメソッドではありません。使用されるクロージャ*です。もう一つの方法は、 'PropertyName'変数/プロパティまたは同様のものを実装する新しいオブジェクトを作成することだけでなく、' OnPropertyChanged'イベントハンドラとそれを配線することです。 –
@pst:コメントありがとうございます。私はここで内部について少し曖昧だと思う。 http://csharpindepth.com/Articles/Chapter5/Closures.aspxを読んでください。 =) – Jens