簡體   English   中英

XAML:用於不透明蒙版的ContentPresenter

[英]XAML: ContentPresenter for an OpacityMask

我正在為toggleButtons創建一個自定義的controlTemplate,它會根據切換狀態更改指定圖像的顏色。 我的計划是使用一個基於visualState的顏色的矩形,並將圖像用於其opacityMask。 我得到的設計時間錯誤是ContentPresenter是它需要刷子。

使用contentPresenter提供該筆刷是否無效? contentPresenter的全部目的不是使用樣式來提供控件的內容嗎?

這是我的代碼的簡化版本,以供參考:

<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>

ContentPresenter不提供任何內容。 與其他任何控件一樣,它是一個控件,它繼承自FrameworkElement / UIElement。

“ OpacityMask”屬性需要畫筆(如您的錯誤所示)。 畫筆從DependencyObject繼承。

長話短說,不,你不能那樣做。

請嘗試更准確地解釋您要完成的工作。 您是否只是在嘗試修改控件內容的不透明度?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM