首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将子级上的触发器设置为父级属性?

如何将子级上的触发器设置为父级属性?
EN

Stack Overflow用户
提问于 2010-07-01 22:41:05
回答 1查看 21K关注 0票数 21

我有一个带ToggleButton的TreeView ( ExpanderButton )。togglebutton有两个图像(一个用于展开,另一个用于非展开)。然而,当我选择一个TreeViewItem时,我用不同的颜色突出它,我也想改变图像的颜色(我有相同的其他颜色的图像)。

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

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-07-05 19:53:54

如果其他人需要这个的话在这里。

代码语言:javascript
运行
复制
<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>
票数 42
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3158832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档