【发布时间】:2011-07-20 23:50:22
【问题描述】:
我有一个执行操作的 ToolStripButton。用户单击该按钮,该按钮被禁用以防止该操作被执行两次。操作完成后,按钮将重新启用。这一切都很完美......除了:
由于按钮被禁用,它不会触发“MouseLeave”事件,因此按钮的外观不会更新。绝对清楚,当鼠标进入 ToolStripButton 时,按钮以橙色突出显示(默认情况下),周围有一个黑框。当我重新启用该按钮时,此突出显示不会被删除。此时,鼠标光标早已远离控件。将鼠标悬停在按钮上自然会通过重绘按钮来修复它。
我想做的是在 ToolStripButton 上“重置”其外观的一些方法。这样的方法甚至可能存在于 ToolStrip 上,但尽管搜索我一直找不到这样的东西。
作为替代方案,我可以直接在按钮上触发“鼠标离开”事件。据我所知,在 C# .NET 中无法轻松做到这一点。
此时任何建议都将不胜感激,我自然不想撕毁我的应用程序并更换工具条。
【问题讨论】:
-
“动作”到底是什么?它会冻结用户界面吗?你真的看到按钮变灰了吗?