2013-10-24 4 views

답변

0

귀하의 예제 코드는 CustomControl 자체 Template 속성을 설정하려고하지TextBoxCustomControl에 포함 된 것이다. ControlTemplate을 변경하려는 TextBox의 XAML을 표시하지 않은 경우 이와 같은 질문에 대답하기는 어렵습니다. 단지이 어떤 TextBox에서 수행 할 수있는 방법에 대한 '가이드'당신이이기 때문에, 나는 할 수 있습니다 앞으로

<Style TargetType="MyCustomControl"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="{x:Type CustomControl}"> 
       <Grid> 
        ... 
        <TextBox Background="{Binding SomeBrushProperty}"> 
         <TextBox.Template> 
          <ControlTemplate TargetType="{x:Type TextBox}"> 
           <!--Define your TextBox ControlTemplate here--> 
          </ControlTemplate> 
         </TextBox.Template> 
        </TextBox> 
        ... 
       </Grid> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

, 당신은 답을 신속하게 얻을 수 있도록하기 위해 관련 코드의 모든을 제공하십시오 및 정확히.


UPDATE >>>

가 좋아, 귀하의 질문에 편집 후, 나는 지금 당신의 질문을 이해 생각한다. 그러나 CustomControl 코드를 변경하거나 새로운 ControlTemplate을 제공하지 않으면이 작업을 수행 할 수 없습니다 (첫 번째 예와 비슷합니다).

당신이 코드를 변경할 수 있다면, 먼저 만들어야합니다 귀하의 예를 들어, 사용하려는 올바른 유형, 같은 NewTextValueDependencyProperty. a Brush. 그럼 당신은이를 포함하도록 CustomControl의 XAML 정의를 변경해야 할 것 :

<TextBox Background="{Binding NewTextValue}"> 
+0

질문을 수정 – James

관련 문제