鼠标在c#中输入鼠标离开

本文关键字:鼠标 离开 输入 | 更新日期: 2023-09-27 18:19:58

我在编写从文本文件绘制图形的程序时遇到问题。我的程序目前正在从文本文件中读取图形并将其绘制在画布上,但我对MouseEnter和MouseLeave事件有问题。

如果有鼠标在多边形上,我想让它变色。我该怎么做?

该应用程序是用WPF编写的,使用Canvas控件。

鼠标在c#中输入鼠标离开

您可以为此使用事件触发器。例如:

<Canvas>
    <Canvas.Resources>
        <Style TargetType="Polygon">
            <Style.Triggers>
                <EventTrigger RoutedEvent="MouseEnter">
                    <BeginStoryboard>
                        <Storyboard>
                            <ColorAnimation Duration="0:0:0.1" 
                                            Storyboard.TargetProperty="(Polygon.Fill).(SolidColorBrush.Color)"
                                            To="Yellow"
                                            />
                        </Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
                <EventTrigger RoutedEvent="MouseLeave">
                    <BeginStoryboard>
                        <Storyboard>
                            <ColorAnimation Duration="0:0:0.1" 
                                            Storyboard.TargetProperty="(Polygon.Fill).(SolidColorBrush.Color)"
                                            To="Blue"
                                            />
                        </Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
            </Style.Triggers>
        </Style>
    </Canvas.Resources>
    <Polygon Fill="Blue" Canvas.Left="100" Canvas.Top="50">
        <Polygon.Points>
            <Point>0,0</Point>
            <Point>20,0</Point>
            <Point>25,5</Point>
            <Point>20,20</Point>
            <Point>0,20</Point>
            <Point>0,0</Point>
        </Polygon.Points>
    </Polygon>
</Canvas>