Diskuze: DependencyProperty a Eventy
Zobrazeno 3 zpráv z 3.
podle me je to docela ok. pokud delas nejakou knihovnu nebo tak, tak bych
zvazil asi implementaci jako RoutedEvent. (http://msdn.microsoft.com/….110%29.aspx)
ma to pak urcite vyhody co se tyka odchytavani toho eventu i mimo danou
komponentu v celem visual tree.
public class ClassX : UserControl
{
public int SomeValue
{
get { return (int)GetValue(SomeValueProperty); }
set { SetValue(SomeValueProperty, value); }
}
public static readonly DependencyProperty SomeValueProperty =
DependencyProperty.Register("SomeValue", typeof(int), typeof(ClassX), new PropertyMetadata(0, OnSomeValueChanged));
private static void OnSomeValueChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
ClassX instance = (ClassX)d;
instance.RaiseEvent(new RoutedPropertyChangedEventArgs<int>((int)e.OldValue, (int)e.NewValue, PreviewSomeValueChangedEvent));
}
public event RoutedPropertyChangedEventHandler<int> SomeValueChanged
{
add { AddHandler(PreviewSomeValueChangedEvent, value); }
remove { RemoveHandler(PreviewSomeValueChangedEvent, value); }
}
public static readonly RoutedEvent PreviewSomeValueChangedEvent =
EventManager.RegisterRoutedEvent("SomeValueChanged", RoutingStrategy.Bubble, typeof(RoutedPropertyChangedEventHandler<int>), typeof(ClassX));
}
Zobrazeno 3 zpráv z 3.