《Avalonia选择器高阶用法》选中模板内部控件下面的子控件

发布时间 2024-01-03 22:40:44作者: 害羞的青蛙

场景需求:当在写样式的时候会发现不光设置模板内部的控件样式,还要根据模板内部控件触发其他子项达到效果

解决思路:

1:找到Expander 内部控件模板ToggleButton 如

<Style Selector="Expander /template/ToggleButton#PART_ExpanderHeader"> </Style>

2: 找到Expander 内部控件模板下面的Path

<Style Selector="Expander /template/ Path#PART_ExpandCollapseChevron"> </Style>

3:根据Expander 内部控件模板ToggleButton点击触发Expander 内部控件模板下面的Path,并设置Path颜色并且给红色

<Style Selector="Expander /template/ ToggleButton#PART_ToggleButton:pressed Path#PART_Path"> 
<Setter Property="Stroke" Value="Red" />
</Style>

 注意:这里的:pressed Path 这里的pressedPath中间是需要加空格的,如果不加的话样式将无法选中达不到上述的需求效果