【问题标题】:inherit a style or find the style programmatically继承样式或以编程方式查找样式
【发布时间】:2011-05-16 18:56:03
【问题描述】:

我有一个第三方控件,我认为它从某个地方获得了一种样式。 我有一个该控件的子类,我在其中添加了一个事件处理程序。但是现在当我用我的覆盖控件替换 xaml 中的旧控件时,样式会丢失。我假设它在应用样式时区分超类和子类。如何告诉它子类,如 MyButton:ThirdPartyButton,应该与 ThirdPartyButton 具有相同的样式。

或者有没有一种程序化的方式来查看样式的来源,比如

ThirdPartyButton.GetDefaultStyleLocation();

【问题讨论】:

    标签: wpf xaml styles


    【解决方案1】:

    在隐式应用的资源中定义一个样式:

    <Style TargetType="{x:Type local:MySubclass}"
           BasedOn="{StaticResource {x:Type thirdParty:Control}}"/>
    

    这是必要的,因为遗憾的是样式没有被继承。

    【讨论】:

    • 这对我有用,谢谢!我以为风格会随之而来
    猜你喜欢
    • 1970-01-01
    • 2017-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-21
    • 2010-12-15
    • 2018-01-24
    相关资源
    最近更新 更多