none
Routed Event mit eigenen Argumeten RRS feed

  • Allgemeine Diskussion

  • Hallo,

    ich habe ein kleines Problem. Ich möchte ein Routet Event mit eigenen Argumenteigenschaften erstellen. Dies funktioniert auch. Aber wenn ich die Autovervollständigung von VS verwende, wird immer nur als Argumentenobjekt RoutetEvent verwendet

    Mein Event:

     /// <summary>
            /// Wird ausgelößt, wenn ein Gruppenheader angeklicked wird.
            /// </summary>
            public delegate void GroupClickEventHandler(object sender, ItemClickEventArgs e);
            public static readonly RoutedEvent GroupClickEvent = EventManager.RegisterRoutedEvent("GroupClick", RoutingStrategy.Bubble, typeof(GroupClickEventHandler), typeof(Hub));
            // Provide CLR accessors for the event
            public event GroupClickEventHandler GroupClick
            {
                add { AddHandler(GroupClickEvent, value); }
                remove { RemoveHandler(GroupClickEvent, value); }
            }


    Meine Argumentenklasse

     public class ItemClickEventArgs : RoutedEventArgs
        {
            public ItemClickEventArgs(RoutedEvent routedEvent, object source, object SelectedItem) : base(routedEvent, source)
            {
                this.SelectedItem = SelectedItem;
            }
    
            private object _SelectedItem;
            /// <summary>
            /// Gibt das Item an, welches ausgewählt wurde.
            /// </summary>
            public object SelectedItem
            {
                get { return _SelectedItem; }
                set { _SelectedItem = value; }
            }
    
    
        }

    Nun wird immer wenn ich die Autovervollständigung verwende, über WPF-Code immer folgendes erzeugt.

            private void hub_GroupClick(object sender, RoutedEventArgs e)
            {
    
            }

    Es sollte aber dieses erzeugt werden. Wenn ich es über

    hub.GroupClick +=

    Vervollständigung mache, funktioniert es auch. Nur nicht über WPF.

    private void hub_GroupClick(object sender, ItemClickEventArgs e)
            {
                
            }
    Wo liegt mein Fehler?

    Samstag, 19. April 2014 23:48

Alle Antworten