J'ai la propriété de dépendance suivante à l'intérieur d'une classe :
class FooHolder
{
public static DependencyProperty CurrentFooProperty = DependencyProperty.Register(
"CurrentFoo",
typeof(Foo),
typeof(FooHandler),
new PropertyMetadata(OnCurrentFooChanged));
private static void OnCurrentFooChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
FooHolder holder = (FooHolder) d.Property.Owner; // <- something like this
// do stuff with holder
}
}
Je dois pouvoir récupérer une référence à l'instance de classe à laquelle appartient la propriété modifiée.
En effet, le FooHolder
possède des gestionnaires d'événements qui doivent être connectés/déconnectés lorsque la valeur de la propriété est modifiée. Le rappel de changement de propriété doit être statique, mais le gestionnaire d'événements ne l'est pas.