如何从 MaterialDesignXamlToolkit 中删除 ComboBox 控件中的装饰器可见性?

How to remove the decorator visibility within the ComboBox control from MaterialDesignXamlToolkit?

如何从 MaterialDesignXamlToolkit 中删除 ComboBox 控件中的装饰器可见性?

示例:我想从中得到:

对此:

我尝试将文本字段装饰可见性设置为隐藏:

materialDesign:TextFieldAssist.DecorationVisibility="Hidden"

但是,这并没有去除下划线装饰。

有什么想法吗?

您在 ComboBox 中看到了两种不同的装饰。

  • 有一个 Underline 具有不同的效果,可以使用此附件隐藏 属性:

    materialDesign:TextFieldAssist.DecorationVisibility="Hidden"
    

    您可以在 default control style on GitHub 中看到这条下划线。

  • ComboBox 有一个 border on the bottom 不受附加的 属性.

    <Setter Property="BorderThickness" Value="0 0 0 1"/>
    

由于您已经停用了下划线,您可能想要删除边框。最简单的方法是在 ComboBox.

上完全设置 BorderThickness
<ComboBox materialDesign:TextFieldAssist.DecorationVisibility="Hidden"
          BorderThickness="0">

如果您愿意,您当然可以将其移出为可重复使用的样式。

<Style x:Key="MyComboBoxStyle" TargetType="{x:Type ComboBox}" BasedOn="{StaticResource {x:Type ComboBox}}">
   <Setter Property="materialDesign:TextFieldAssist.DecorationVisibility" Value="Hidden"/>
   <Setter Property="BorderThickness" Value="0"/>
</Style>
<ComboBox Style="{StaticResource MyComboBoxStyle}">

如果要使样式 隐式 应用于范围内的所有 ComboBox 样式,请删除 x:Key