Это правильно Event + DependencyProperty? - PullRequest
0 голосов
/ 21 ноября 2010
    // Property
    IsSelectedProperty = DependencyProperty.Register("IsSelected", typeof(bool), typeof(MyControl),new UIPropertyMetadata(false, 
        new PropertyChangedCallback(OnIsSelectedChanged)));

    // Event
    public event RoutedEventHandler SelectedChanged
    {
        add { AddHandler(SelectedChangedEvent, value); }
        remove { RemoveHandler(SelectedChangedEvent, value); }
    }

    // How Do I Raise the Event ???
    static void OnIsSelectedChanged(DependencyObject source, DependencyPropertyChangedEventArgs e)
    {
        var s = (MyControl)source;

        // ???? 
        s.OnSelectedChanged(source, EventArgs.Empty);

1 Ответ

0 голосов
/ 21 ноября 2010

если вы пытаетесь поднять RoutedEvent, просто вызовите this.Raise(...);

, если вы вызываете в статическом методе, вызовите его так:

((MyControl)s).Raise( new RoutedEventArg( MyControl.MyEvent ) );
...