首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XAML: OpacityMask的ContentPresenter

XAML: OpacityMask的ContentPresenter
EN

Stack Overflow用户
提问于 2014-07-01 04:38:01
回答 1查看 95关注 0票数 0

我正在为toggleButtons制作一个自定义的controlTemplate,它根据切换状态更改指定图像的颜色。我的计划是使用一个带有基于visualState的颜色的矩形,并使用图像作为其opacityMask。我得到的设计时错误是ContentPresenter需要一个笔刷。

让contentPresenter提供画笔是无效吗?contentPresenter的全部意义不就是使用样式提供控件的内容吗?

以下是我的代码的简化版本,以供参考:

代码语言:javascript
复制
<Style x:Key="customToggleButtonStyle" TargetType="ToggleButton">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="ToggleButton">
                <Rectangle>
                    <Rectangle.OpacityMask>
                        <ContentPresenter Content="{TemplateBinding Content}" />
                    </Rectangle.OpacityMask>
                </Rectangle>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>
EN

回答 1

Stack Overflow用户

发布于 2014-07-01 21:22:47

ContentPresenter不提供任何东西。它是一个控件,就像任何其他控件一样,它继承自FrameworkElement / UIElement。

"OpacityMask“属性需要一个画笔(就像你的错误所说的那样)。画笔继承自DependencyObject。

长话短说,不,你不能这么做。

请试着更准确地解释你想要实现的目标。您只是想修改控件内容的不透明度吗?

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

https://stackoverflow.com/questions/24498545

复制
相关文章

相似问题

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