我想將我的Button ControlTemplate中的Border.Background綁定到我的按鈕的背景屬性。通常我會用一個TemplateBinding:WPF將ControlTemplate的內容綁定到Property in Control?
<Style TargetType="Button" x:Key="ColuredButton">
<Setter Property="Background" Value="LightGreen"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="Border" CornerRadius="2" BorderThickness="1" BorderBrush="Gray">
<Border.Background>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="{TemplateBinding Foreground}"/>
<GradientStop Color="{TemplateBinding Background}"/>
</LinearGradientBrush>
</Border.Background>
<ContentPresenter Margin="2" HorizontalAlignment="Center" VerticalAlignment="Center" RecognizesAccessKey="True" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
但我得到的錯誤:「如果不能在一個模板不能設置TemplateBinding」但我在一個模板! (它的工作原理,如果我不使用一個LinearGradientBrush並結合邊界底色物業直接{TemplateBinding背景} ....
謝謝,你能編輯'他/她'是'他'嗎? – Snowbear
:)當然**男** ** –
我有一個使用模板內的模板的控件,我必須在它們兩者中進行這種綁定。像魔術一樣工作! – sprite