我在wpf中的程序是根据条件动态添加标签。但是,在设置标签的MouseEnter和MouseLeave设置时遇到了一些麻烦。这就是我现在所拥有的。

Test1.MouseEnter += PresetLabelHover(ID);
Test1.MouseLeave += PresetLabelHoverEnd();


其中,PresetLabelHover将使名称为PresetLabel的标签可见,而PresetLabelHoverEnd将使名称为PresetLabel的标签不可见。 ID是程序使用的数字,它需要传递给PresetLabelHover来设置PresetLabel的内容。 Test1是程序制作的标签。

我得到的错误是

Cannot implicitly convert type 'void' to System.Windows.Input.MouseEventHandler'


这是我的PresetLabelHover和PresetLabelHoverEnd代码

private void PresetLabelHover(int number)
{
    PresetLabel.Content = number;
    PresetLabel.Visibility = Visibility.Visible;
}

private void PresetLabelHoverEnd()
{
    PresetLabel.Visibility = Visibility.Hidden;
}


总的来说,这就是应该发生的事情。

程序插入标签。当鼠标悬停在特定标签上时,它将使其他标签可见,并带有传递给我的数字。鼠标离开标签区域后,其他标签将不可见。

如果有人可以帮助我,那就太好了。谢谢!

最佳答案

我认为鼠标进入和鼠标离开是诸如单击和填充之类的事件处理程序...您应该能够从设计器中添加这些内容...只需单击标签并在“事件”选项卡下检查...然后寻找鼠标输入和鼠标离开事件...应该看起来像这样

    private void Label1_MouseEnter(object sender, MouseEventArgs e)
    {
        Label1.Content = number;
        Label1.Visibility = Visibility.Visible;
    }

关于c# - WPF中的MouseEnter和MouseLeave,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30113495/

10-11 16:33