我想创建它改变其不透明性的鼠标悬停状态时,鼠标在堆叠面板。

我已经建立的状态下,并且创建的堆栈面板MOUSE_ENTER事件,并在后面CS文件中的代码,我已经在上MOUSE_ENTER事件下面的代码

MouseOver.Begin();

当鼠标悬停是连环画的名字,但是当我的鼠标悬停在堆栈面板或甚至单击堆栈面板上,什么都没有发生,我错过什么?

由于

PlayKid

有帮助吗?

解决方案

我想出自己。

使用此代码:

VisualStateManager.GoToState

谢谢大家。

其他提示

您确认事件被触发(你已经正确连接好事件)?尝试使用一个消息框,什么检查。 (System.Windows.MessageBox.Show()

您确定故事板工作良好在其他情况下(试图在页面加载或东西吗?)

如果这两个工作,请解释你如何去有关添加事件处理程序。

在我的经验,挂钩一MOUSE_ENTER事件面板不起作用,因为在面板里面的内容最终窃取事件。我通常的解决办法是建立覆盖我想鼠标事件,并保持该项目在视觉树的顶部区域透明的目标。所以XAML看起来是这样的:

<StackPanel x:Name="ContentPanel" SizeChanged="ContentPanelSizeChanged" >
    < /*Some content here */ >
</StackPanel>
<Canvas x:Name="HitTarget" Mouse_Enter="HitTargetMouseEnter" />

和然后ContentPanelSizeChanged处理程序设置HitTarget画布的大小是的StackPanel的实际(渲染)的大小。同样的事情适用于MOUSEBUTTONDOWN事件,我会假定它为鼠标滚轮事件也是如此。我建议尝试塞特希的故障诊断建议,但如果你不能得到火(此时我会假设是问题)的情况下,让这个尝试。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top