[英]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.