WPF EventTriggers — невозможно преобразовать строку «MouseEnter» в атрибуте «RoutedEvent» в объект типа «System.Windows.RoutedEvent»

Я не могу заставить работать триггеры событий. Упрощенный пример того, что я делаю, приведен ниже:

<Window x:Name="win" x:Class="EventTriggers.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Window.Resources>
    <ControlTemplate x:Key="buttonT">
        <Border Background="#333">
            <TextBlock Text="{Binding}" HorizontalAlignment="Stretch" Foreground="White"/>
            <Border.Triggers>
                <EventTrigger RoutedEvent="MouseEnter">

                </EventTrigger>
            </Border.Triggers>
        </Border>
    </ControlTemplate>

    <DataTemplate x:Key="lbt">
        <Button Template="{StaticResource buttonT}" Click="Button_Click"></Button>
    </DataTemplate>

</Window.Resources>
<ListBox ItemsSource="{Binding ElementName=win,Path=col}" ItemTemplate="{StaticResource lbt}">
</ListBox>

I know there is a MouseEnter event on Border since it is defined in UIElement but I'm still getting

Не удается преобразовать строку «MouseEnter» в атрибуте «RoutedEvent» в объект типа «System.Windows.RoutedEvent»

как только я запускаю приложение.

Любая помощь будет очень признательна.


person EightyOne Unite    schedule 10.03.2009    source источник


Ответы (2)


Вы также должны указать тип, поэтому:

<EventTrigger RoutedEvent="Mouse.MouseEnter"></EventTrigger>
person Razzie    schedule 10.03.2009
comment
Я слышал, что с помощью '.' (точка) в строке xaml для привязки вызывает утечку памяти. Есть ли другой способ использования триггера с событием MouseEnter? - person tcables; 10.12.2010
comment
Я ничего подобного не слышал. И, если честно, это звучит немного смешно. Где ты это прочитал? - person Razzie; 10.12.2010

Полное название события:

<EventTrigger RoutedEvent="Border.MouseEnter">

</EventTrigger>
person Kent Boogaart    schedule 10.03.2009