3
我有一個TreeView
與HierarchicalDataTemplate
(如下所示)綁定到數據集中的數據關係。父節點代表父代部分,子代代表組成父代的部分。在某些情況下,用戶將檢查父級別的複選框,以指示他們正在用其所有孩子替換整個部分。此時會出現一個文本框供他們輸入父件的新部件號。到目前爲止,我有這樣的工作。使用HierarchicalDataTemplate.Triggers影響ItemTemplate中的控件
我需要幫助的是,當父母複選框被選中時隱藏孩子。我一直在觸發這條路徑,但似乎無法從HierarchicalDataTemplate.Triggers
的觸發器中引用ItemTemplate中的任何控件。也許這是不可能的?
<HierarchicalDataTemplate ItemsSource="{Binding MyParts}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Description}" />
<CheckBox x:Name="MyCheckBox" IsChecked="{Binding ReplaceParent}"></CheckBox>
<TextBox x:Name="NewParentPartNumberTextBox" Text="{Binding NewPartNumber}" Visibility="Collapsed"></TextBox>
</StackPanel>
<HierarchicalDataTemplate.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding ChildPartNumber}" />
<TextBox Text="{Binding NewChildPartNumber}" />
</StackPanel>
</DataTemplate>
</HierarchicalDataTemplate.ItemTemplate>
<HierarchicalDataTemplate.Triggers>
<Trigger SourceName="MyCheckBox" Property="IsChecked" Value="True">
<Setter TargetName="NewParentPartNumberTextBox" Property="Visibility" Value="Visible"/>
</Trigger>
</HierarchicalDataTemplate.Triggers>
</HierarchicalDataTemplate>