0
我有以下的TreeView:如何綁定到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,那麼將圖像大小綁定到父級應該可以工作。
也許他們指的是從'DataTemplate'之外引用它,我測試了它,它正在做我在找的東西。猜猜我應該試過它。 – themightymanuel
@themightymanuel我認爲這一定是它。很多人遇到了範圍問題。 –