Tengo la siguiente propiedad de dependencia dentro de una clase:Conseguir este puntero dentro de la propiedad de dependencia cambió de devolución de llamada
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
}
}
Tengo que ser capaz de recuperar una referencia a la instancia de la clase a la que pertenece la propiedad cambiada.
Esto es desde FooHolder
tiene algunos controladores de eventos que deben engancharse/desengancharse cuando se cambia el valor de la propiedad. La devolución de llamada cambiada de propiedad debe ser estática, pero el controlador de eventos no lo es.
Y yo que estaba buscando en torno a las propiedades en el interior * * d, tal vez fue a obvia. ¡Gracias! – Mizipzor
1000 gracias por este ... Simplemente fui a un viaje de 16 horas para encontrar lo obvio .. La documentación de MSDN parece escrita por Sir Humphrey Appleby .. –