0
私は、次のツリービューを持っている:DataTemplateの兄弟要素にバインドする方法は?
<TreeView Grid.Column="2" x:Name="itemTreeView" Margin="0" SelectedItemChanged="SelectionChanged">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type local:MarketGroup}">
<HierarchicalDataTemplate.ItemsSource>
<Binding Path="children"/>
</HierarchicalDataTemplate.ItemsSource>
<TextBlock Text="{Binding marketGroupName}" ToolTip="{Binding description}"/>
</HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type local:ItemType}">
<StackPanel Orientation="Horizontal">
<Image Source="{Binding itemImage}" Height="{Binding Sibling.ActualHeight}"/>
<TextBlock Text="{Binding typeName}" ToolTip="{Binding description}"/>
</StackPanel>
</DataTemplate>
</TreeView.Resources>
</TreeView>
それでは、私がやりたいことは、彼らが同じサイズになるようDataTemplateをバインドに位置画像は、それはその横のTextBlockの実際の高さまでの高さだ持っています。これまでのところ、兄弟を参照するために頼りにしていたのは、x:Nameを定義して名前で参照することに依存していましたが、それは唯一のテンプレートなのでDataTemplateの要素に名前を付けることはできません。代わりに、親StackPanelをTextBlockにバインドする方法があった場合、親にImageサイズをバインドすることも可能です。
おそらく、私はそれをテストした 'DataTemplate'の外からの参照を参照していて、私が探していたことをやっています。私はちょうどそれをとにかく試みるべきだったと思う。 – themightymanuel
@themightymanuel私はそれがあったと思います。多くの人々がスコープに入ります。 –