c# – WPF中的MouseEnter和MouseLeave处理(使用VS2008和.net 3.5
发布时间:2020-12-15 17:16:36 所属栏目:百科 来源:网络整理
导读:没有图像和没有代码解释问题并不容易.对于那些感兴趣的人,我做了一个样本C#/ WPF项目,可以从 http://rapidshare.com/files/461745095/02.WPFControlEvents.rar下载 这是一个非常小的项目(45KB).问题如下(我为扭曲的描述道歉): 一个“花哨”(而且相当丑陋)的
没有图像和没有代码解释问题并不容易.对于那些感兴趣的人,我做了一个样本C#/
WPF项目,可以从
http://rapidshare.com/files/461745095/02.WPFControlEvents.rar下载
这是一个非常小的项目(45KB).问题如下(我为扭曲的描述道歉): 一个“花哨”(而且相当丑陋)的按钮包含一个堆栈面板,该面板又包含1.)标签,2.)帆布,3.)两(2)个同心椭圆,全部从左到右排列. 堆栈面板有一个MouseEnter和MouseLeave事件处理程序,它在标题栏中显示一条消息,指示鼠标是在堆栈面板上还是在堆栈面板之外. 问题是:当鼠标位于标签上方(依次包含在堆叠面板中)时,鼠标(正确地)报告为位于堆叠面板上方.当鼠标在画布上移动时(也包含在堆栈面板中),鼠标(错误地?)报告为不在堆栈面板上,但是当鼠标向右移动一点时(在两个椭圆上),在画布上,报告鼠标再次在stackpanel上. 为什么当鼠标悬停在画布上时,它被报告为不在堆栈面板上,但是当鼠标位于画面上(在画布上绘制)时,它被报告为在堆栈面板上? 谢谢你揭开这个问题, 约翰. 解决方法
您可能需要将“画布的背景”设置为“透明”.这将使其“可以测试”并报告鼠标事件.
更多信息可以在here找到,但Canvas默认为空背景. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |