Custom RoutedEvent as EventTrigger

12,056

Solution 1

<EventTrigger RoutedEvent="shapes:MirrorTile.SelectedLeave">

the namespace was missing also.

Solution 2

You have to provide the type as well:

<EventTrigger RoutedEvent="MirrorTile.SelectedEnter"></EventTrigger>

Edit upon comment:

Have you tried adding a namespace to your XAML declaration?

 xmlns:local="clr-namespace:YourNameSpace"

Then fix this to:

 <EventTrigger RoutedEvent="local:MirrorTile.SelectedEnter"></EventTrigger>

Solution 3

I think you are missing the type that defines your event:

<EventTrigger RoutedEvent="MirrorTile.SelectedEnter">
Share:
12,056
Admin
Author by

Admin

Updated on July 01, 2022

Comments

  • Admin
    Admin almost 2 years

    I have my own shape class

    public sealed class MirrorTile : Shape
    

    and in this class I added the event

    public static readonly RoutedEvent SelectedEnterEvent = EventManager.RegisterRoutedEvent("SelectedEnter", RoutingStrategy.Bubble, typeof(RoutedEventHandler), typeof(MirrorTile));
    
    public event RoutedEventHandler SelectedEnter
    {
        add
        {
            this.AddHandler(SelectedEnterEvent, value);
        }
    
        remove
        {
            this.RemoveHandler(SelectedEnterEvent, value);
        }
    }
    

    and want to use it in this way

    <shapes:MirrorTile>
        <shapes:MirrorTile.Triggers>
            <EventTrigger RoutedEvent="SelectedEnter">
                <BeginStoryboard Storyboard="{StaticResource SelectShape}"/>
            </EventTrigger>
        </shapes:MirrorTile.Triggers>
    </shapes:MirrorTile>
    

    After starup I get the exception: {"RoutedEventConverter cannot convert from System.String."}

    What I'm doing wrong and how can I fix this problem?

  • Admin
    Admin over 11 years
    I tried this but I get an exception also {"Type reference cannot find type named '{http://schemas.microsoft.com/winfx/2006/xaml/presentation}‌​MirrorTile'."}
  • Admin
    Admin over 11 years
    I tried this but I get an exception also {"Type reference cannot find type named '{http://schemas.microsoft.com/winfx/2006/xaml/presentation}‌​MirrorTile'."}
  • christoph
    christoph over 9 years
    @McGarnagle: Are you sure about the second colon? My VS stops telling me there is an error when I replace it with a point.
  • McGarnagle
    McGarnagle over 9 years
    namespace:ClassName.EventName