2014-01-06 2 views
-1

У меня есть настраиваемый элемент управления, его шаблон управления будет выглядеть ниже.Знать хостинг Контроль управления

<Style TargetType="local:CustomButton"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="local:CustomButton"> 
       <Grid> 
        <Border x:Name="CtrlBorder"> 
         <StackPanel Orientation="Horizontal"> 
          <TextBox Name="Tbox" 
            BorderThickness="1,1,0,1" 
            Text="{Binding TextBoxText, 
                RelativeSource={RelativeSource TemplatedParent}, 
                Mode=TwoWay, 
                UpdateSourceTrigger=PropertyChanged}" /> 
          <Button Width="20" 
            Background="#FFF0F0F0" 
            BorderThickness="0,1,1,1" 
            IsTabStop="False"> 
          </Button> 
         </StackPanel> 
        </Border> 
       </Grid> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

В случае, я получил Tbox и мне нужно, чтобы получить CustomButton с этим Tbox. Любая идея по этому поводу?

ответ

0

Может пройти через TemplatedParent собственность этого контроля.

0

пользовательского управления будет лежать в визуальном дереве, как родителя, так FindAncestor будет работать здесь:

Text="{Binding TextBoxText, 
       RelativeSource={RelativeSource Mode=FindAncestor, 
               AncestorType=local:CustomButton}, 
       Mode=TwoWay, 
       UpdateSourceTrigger=PropertyChanged}" /> 
+0

Спасибо, я нашел решение для этого (с учетом как ответ). Он отлично работает для меня.. – Sankarann

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