2011-12-08 2 views
1

에 따라 MaxHeight입니다을 텍스트 상자를 설정할 수 있습니다 나는 다음과 같은 구조가 있습니다, 어떻게 다른 두 컨트롤

  <StackPanel 
       Name="stkOuter"> 
       <StackPanel 
        Name="stkInner"> 
        Content... 
       </StackPanel> 
       <TextBox> 
        Content... 
       </TextBox> 
      </StackPanel> 

내가

  stkOuter.ActualHeight-stkInner.ActualHeight 

그러나 컨버터로 텍스트 상자에 대한 MaxHeight입니다을 설정해야합니다을 Binding을 사용하여 하나의 매개 변수 만 사용할 수 있으며 ConverterParameter는 객체 여야합니다.

MaxHeight="{Binding RelativeSource={RelativeSource AncestorType={x:Type StackPanel}}, 
        Path=ActualHeight, 
        Converter={StaticResource MyConverter}, 
        ConverterParameter={WHAT GOES HERE?}}" 

아이디어가 있으십니까?

당신은 IMultiValueConverter를 사용해야합니다

답변

2

:

<TextBox.MaxHeight> 
    <MultiBinding Converter={StaticResource myIMultiValueConverter}> 
     <Binding /> <!-- bind the first value here --> 
     <Binding /> <!-- bind the second value here --> 
     ... 
    </MultiBinding> 
</TextBox.MaxHeight> 
1

대신 간단한 BindingMultiBinding를 사용; 변환기가 바인딩을 통해 모두 생성 될 수있는 여러 입력 값에서 작동 할 수 있습니다 (ConverterParameterBinding에서 값을 가져올 수 없습니다).

관련 문제