如何让WPF控件模仿禁用状态?

时间:2015-04-03 18:56:08

标签: c# wpf disabled-control

基本上我有一个自定义WPF按钮,我希望看起来已禁用,但仍能够对按下的按钮作出反应。

如果可能的话,我不想与其他事件类型联系起来,因为触摸和保持已经存在一些有趣的时间问题。

谢谢!


这就是我最后做的解决方法:

        this.myLabel.Foreground = Brushes.DarkGray;
        this.mySeparator.BorderBrush = Brushes.DarkGray;
        this.myOtherLabel.Foreground = Brushes.DarkGray;

我不是一个巨大的粉丝,因为它对我的自定义控件的组件非常自定义,但这至少是一种快速的编程方式,直到有人有更好的东西。

1 个答案:

答案 0 :(得分:0)

您可以获取此控件的当前模板:

System.Windows.Markup.XamlWriter.Save(myButton.Template, new FileStream("c:\\bla.xml", FileMode.Append));

检查模板触发器以查看禁用按钮时的更改,并相应地设置属性。

编辑:好的,那不是......: - )

您也可以将按钮设置为禁用,然后使用Snoop或Show me the templates检查布局属性的值 - 或者,以编程方式将它们保存到样式 - 然后再次启用该按钮并应用它的风格?