xaml - 如何在子级上将触发器设置为父级属性?

标签 xaml binding treeview triggers togglebutton

我有一个带有ToggleButton(ExpanderButton)的TreeView。切换按钮有两张图片(一张用于展开,另一张用于展开)。但是,当我选择一个TreeViewItem时,我用另一种颜色来高亮它,我也想改变图像的颜色(我在另一种颜色中有相同的颜色)。

问题是我不知道如何将ToggleButton的触发器属性设置为TreeViewItem的IsSelected属性。

有任何想法吗?

最佳答案

如果有人需要,请在这里。

<ControlTemplate TargetType="ToggleButton">
                <Image Name="ExpanderImage" Height="24" Width="24" Source="..\Images\Icons\32x32\Blue\Open.png" />
                <ControlTemplate.Triggers>
                    <Trigger Property="IsChecked" Value="True">
                        <Setter TargetName="ExpanderImage" Property="Source" Value="..\Images\Icons\32x32\Blue\Close.png" />
                    </Trigger>
                    <DataTrigger Binding="{Binding Path=IsSelected, RelativeSource={RelativeSource TemplatedParent}}" Value="True">
                        <Setter TargetName="ExpanderImage" Property="Source" Value="..\Images\Icons\32x32\Green\Open.png" />
                    </DataTrigger>
                    <MultiDataTrigger>
                        <MultiDataTrigger.Conditions>
                            <Condition Binding="{Binding Path=IsChecked, RelativeSource={RelativeSource Self}}" Value="True" />
                            <Condition Binding="{Binding Path=IsSelected, RelativeSource={RelativeSource TemplatedParent}}" Value="True" />
                        </MultiDataTrigger.Conditions>
                        <Setter TargetName="ExpanderImage" Property="Source" Value="..\Images\Icons\32x32\Green\Close.png" />
                    </MultiDataTrigger>
                </ControlTemplate.Triggers>
            </ControlTemplate>

关于xaml - 如何在子级上将触发器设置为父级属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3158832/

相关文章:

xaml - 在 ListView 中如何将单击的对象发送回 View 模型中的命令 - Xamarin Forms

c# - ComboBox 中的默认加载值 - WPF MVVM

Angular - 绑定(bind)公共(public)/私有(private)属性

c++ - 如何使用可变参数完美转发到 lambda?

c# - 文本框的两种方式绑定(bind)

ASP.Net TreeView 将选定的节点滚动到 View 中

java - Eclipse Scout TreeView 事件处理

c# - 事件冒泡和 RoutedEventArgs Source 属性

c# - 超链接上的投影效果

WPF MVVM TreeView SelectedItem