Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何修复切换按钮悬停检测?_C#_Wpf_Rider - Fatal编程技术网

C# 如何修复切换按钮悬停检测?

C# 如何修复切换按钮悬停检测?,c#,wpf,rider,C#,Wpf,Rider,当我将鼠标悬停在按钮上时,它将变为浅绿色,但一旦移除光标,它不会切换回黑色 我是C#新手,我正在努力掌握基本的应用程序功能。它们似乎与Java的Swing和JavaFX非常不同 private void Mouse\u Move(对象发送器,MouseEventArgs e) { var元素=(UIElement)e.来源; var c=Grid.GetColumn(元素); var r=Grid.GetRow(元素); 如果(c==0&&r==0) { MenuButton.Fill=笔刷.A

当我将鼠标悬停在按钮上时,它将变为浅绿色,但一旦移除光标,它不会切换回黑色

我是C#新手,我正在努力掌握基本的应用程序功能。它们似乎与Java的Swing和JavaFX非常不同

private void Mouse\u Move(对象发送器,MouseEventArgs e)
{
var元素=(UIElement)e.来源;
var c=Grid.GetColumn(元素);
var r=Grid.GetRow(元素);
如果(c==0&&r==0)
{
MenuButton.Fill=笔刷.Aqua;
}
其他的
{
MenuButton.Fill=画笔.Black;
}
}

使用
MouseLeave
MouseEnter
而不是
MouseMove

XAML

<Rectangle x:Name="MenuButton" MouseEnter="Mouse_Enter" Grid.Column="0" Grid.Row="0" MouseLeave="Mouse_Leave">
private void Mouse_Enter(object sender, MouseEventArgs e)
{
    var element = (UIElement) e.Source;

    var c = Grid.GetColumn(element);
    var r = Grid.GetRow(element);
    if (c == 0 && r == 0)
    {
        MenuButton.Fill = Brushes.Aqua;
        //Change fill to Aqua when the cursor enters
    }
}

private void Mouse_Leave(object sender, MouseEventArgs e)
{
    var element = (UIElement) e.Source;

    var c = Grid.GetColumn(element);
    var r = Grid.GetRow(element);
    if (c == 0 && r == 0)
    {
        MenuButton.Fill = Brushes.Black;
        //Change fill to Black when the cursor leaves
    }
}