2013-05-29 3 views
4

Как я могу получить значение свойства setterter в xaml?Получение значения из свойства set setter в xaml

К примеру, у меня есть следующий стиль:

<Style TargetType="TextBox"> 
    <Setter Property="Background" Value="YellowGreen" /> 
</Style> 

Как я могу получить значение свойства фона от стиля TextBox по умолчанию?

<Style TargetType="Button"> 
    <Setter Property="Background" Value="{Binding ???}" /> 
</Style> 

мне это нужно, потому что я не доступ к TextBox стиле ..

ответ

5

Если вы не можете изменить стиль TextBox, вы могли бы сделать это обходным (проверено, работает):

<TextBox x:Key="DefaultTextBox" /> 
<Style TargetType="Button"> 
    <Setter Property="Background" 
    Value="{Binding Source={StaticResource DefaultTextBox}, Path=Background}" /> 
</Style> 

Вы не можете связать в XAML для сеттера стиль для фона.

+0

Он работает !!! Спасибо много! – Chepene

3

Вы должны реорганизовать XAML:

<SolidColorBrush x:Key="BackgroundBrush" Color="YellowGreen" /> 
<Style TargetType="TextBox"> 
    <Setter Property="Background" Value="{StaticResource BackgroundBrush}" /> 
</Style> 

<Style TargetType="Button"> 
    <Setter Property="Background" Value="{StaticResource BackgroundBrush}" /> 
</Style> 

Наручники затруднять работу и не предназначены для такого рода действия.

+0

Я не могу изменить стиль TextBox, у меня нет доступа к нему. Поэтому я не могу использовать ваш подход ... – Chepene

Смежные вопросы