首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何禁用WPF扩展控件isPressed/onMouseClick事件?

如何禁用WPF扩展控件isPressed/onMouseClick事件?
EN

Stack Overflow用户
提问于 2020-06-11 14:19:53
回答 1查看 65关注 0票数 0

我有一个带有扩展控件的WPF应用程序。我希望Expander仅基于IsMouseOver事件展开。通过在IsMouseOver中实现相应的触发器,我能够启用ControlTemplate.Triggers行为。但我不知道如何禁用IsPressed/OnMouseClick事件。任何关于如何做的建议都是非常感谢的。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-11 15:23:15

您可以处理默认模板中称为“PreviewMouseLeftButtonDown”的ToggleButtonToggleButton事件:

代码语言:javascript
复制
private void HeaderSite_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e) 
    => e.Handled = true;

XAML:

代码语言:javascript
复制
<ToggleButton x:Name="HeaderSite" PreviewMouseLeftButtonDown="HeaderSite_PreviewMouseLeftButtonDown" ContentTemplate="{TemplateBinding HeaderTemplate}" ... />

请记住,XAML是一种标记语言,您应该在编程语言(如C# )中实现这种行为。

如果您的模板是在ResourceDictionary中定义的,那么您应该向它添加一个code-behind class,并在那里定义事件处理程序。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62326546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档