将鼠标hover在控件上而不使用事件时,在标签中显示文本

当您将鼠标hover在控件上时,很多程序会在状态栏中的标签中显示一小段信息,告诉您如果单击它将会执行的操作,然后在鼠标离开其区域时重置文本。 一个例子是PaintShop Pro X4。

我想在我的应用程序中执行此操作。 我当然可以通过使用鼠标输入事件更改状态栏中标签的内容,然后在鼠标离开事件中将其清空,就像我在之前的一些程序中所做的那样轻松实现,但这意味着我必须创建那些我希望在状态栏中显示其信息的每个控件有2个事件处理程序(我可以使用一个处理程序进行重置并让所有控件都使用它)但我有很多控件。 有没有更好的方法可以在不使用任何C#或事件处理程序的情况下执行此操作? 我可以在XAML中做到这一点,有点像布尔到可见性转换器,但只是将文本设置为某种东西,因为我真的不想为控件创建大量的事件处理程序,我甚至可能不会用于任何东西(如组框,我会在代码中使用它们,但我想要一个状态信息)? 谢谢。

您可以在Trigger使用UIElement.IsMouseOver属性来执行您想要的操作。 尝试这样的事情: