1

heightツリー ビューがあり、 =ウィンドウの高さを -120に設定したいと考えています。

これを試しましたが、うまくいきません。手伝ってくれませんか?

ありがとう、

ジャン。

<TreeView x:Name="MyTreeView"  
    ItemsSource="{Binding  NavigationData}" 
    Height="{Binding Path=Height -120, RelativeSource={RelativeSource AncestorType={x:Type  Window}}}" >
4

2 に答える 2

2

コンバーターが必要です。

コンバーターを作成する

public class HeightConverter : IValueConverter
{
   public object Convert(object value, Type targetType,
      object parameter, System.Globalization.CultureInfo culture)
     {
        return ((int) value) - 120;
     }
}

コンバーターをリソースに追加する

<UserControl.Resources>
   <local:HeightConverter x:Key="myConverter" />
</UserControl.Resources>

バインディングにコンバーターを設定します

ItemsSource="{Binding NavigationData}" Height="{Binding Path=Height, Converter={StaticResource myConverter}, RelativeSource={RelativeSource AncestorType={x:Type Window}}}" >
于 2012-08-20T19:32:19.497 に答える
0

上記の例 (-120) のように、 はBindingロジックをサポートしていません。達成しようとしていることに応じて、 (に設定) とPathを使用できる場合があります。VerticalAlignmentStretchMargin

<TreeView VerticalAlignment="Stretch" Margin="0,60,0,60"/>

それ以外の場合、データ バインドが必要な場合は、Converter渡された値から値を減算する a を使用できます。

于 2012-08-20T19:33:00.203 に答える