微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

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

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

例如:我想从中得到:

ComboBox with underline.

为此:

Expected: ComboBox without underline.

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

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"/>
    

由于您已经取消了下划线,您可能想要移除边框。最简单的方法是在您的 BorderThickness 上完全设置 ComboBox

<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}">

如果您想让样式隐式,该样式应用于范围内的所有 x:Key ,请删除 ComboBox

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。