2010-12-09 2 views
0

У меня есть пользовательский контроль, содержащий простую кнопку. Я хочу связать кнопку Content to userControl Content - Как это сделать?Привязка кнопки Content to userControl Content

+0

Вы хотите, чтобы связать Content свойство кнопки для содержания UserControl, который содержит кнопку или я читал ваш вопрос неправильно? – 2010-12-09 11:27:48

ответ

3

Установить имя для пользовательского элемента управления (например x:Name="self") и в Баттона

<Button Content={Binding ElementName=self}" /> 

ли вы имеете в виду это или что-то еще?

2

Если кнопка находится внутри UserControl, она является частью содержимого UserControl и не может рекурсивно содержать себя. Вся цель UserControl заключается в том, что вы явно определяете фиксированный набор Контента. Если вы хотите, содержимое переменной, то вы должны использовать шаблонного ContentControl что-то вроде этого:

<ContentControl Content="{Binding SomeVariableValue}"> 
    <ContentControl.Template> 
     <ControlTemplate TargetType="{x:Type ContentControl}"> 
     <Border> 
      <!-- Other content from your user control --> 
      <Button Content="{TemplateBinding Content}"/> 
     </Border> 
     </ControlTemplate> 
    </ContentControl.Template> 
    </ContentControl>