设置可编辑 ComboBox 的边框颜色,重点放在 PART_EditableTextBox

问题描述

我需要更改 ComboBox认样式,以便如果 PART_EditableTextBox.IsMouSEOver = true,边框颜色与 toggleButton.IsMouSEOver = true 相同。

参考 Set border color of editable ComboBox on focus 我只能做:

<ControlTemplate targettype="{x:Type ComboBox}">
     <Grid x:Name="templateRoot" >
         <ToggleButton x:Name="toggleButton"  />
         <Border x:Name="border" >
             <TextBox x:Name="PART_EditableTextBox"  />                                
         </Border>
     </Grid>
     <ControlTemplate.Triggers>
          <Trigger SourceName="PART_EditableTextBox" Property="IsMouSEOver" Value="True">
                <Setter Property="BorderBrush" Value="{StaticResource ComboBox.MouSEOver.Editable.Border}" TargetName="toggleButton"></Setter>
          </Trigger>
     </ControlTemplate.Triggers></ControlTemplate>

但实际上什么也没发生。可能是因为我需要以某种方式不引用toggleButton BorderBrush,而是引用toggleButton 包含的边框?

 <ControlTemplate targettype="{x:Type ToggleButton}">
                    <Border x:Name="templateRoot" ...>
                        <Border x:Name="splitBorder" ...>
                        </Border>
                    </Border>
                    <ControlTemplate.Triggers>... </ControlTemplate.Triggers>
 </ControlTemplate>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)