WPF EventTriggers - Impossibile convertire la stringa 'MouseEnter' nell'attributo 'RoutedEvent' in oggetto di tipo 'System.Windows.RoutedEvent'

StackOverflow https://stackoverflow.com/questions/630239

  •  08-07-2019
  •  | 
  •  

Domanda

Non riesco a far funzionare alcun trigger di evento. Un esempio semplificato di ciò che sto facendo è di seguito -

<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>

So che c'è un evento MouseEnter su Border poiché è definito in UIElement ma sto ancora ricevendo

  

Impossibile convertire la stringa 'MouseEnter' in   attributo "RoutedEvent" all'oggetto di   digitare "System.Windows.RoutedEvent"

non appena eseguo l'applicazione.

Qualsiasi aiuto sarebbe molto apprezzato.

È stato utile?

Soluzione

Devi fornire anche il Tipo, quindi:

<EventTrigger RoutedEvent="Mouse.MouseEnter"></EventTrigger>

Altri suggerimenti

Qualifica completa del nome dell'evento:

<EventTrigger RoutedEvent="Border.MouseEnter">

</EventTrigger>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top