You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 4.8 WPF MaterialDesign SmartHint显示黑边异常问题

MaterialDesignOutlinedTextBox更新后黑色侧边栏问题修复

我们在WPF项目中使用MaterialDesignThemes库已有一段时间,最近更新库后,应用了MaterialDesignOutlinedTextBox样式的TextBox控件出现了异常的黑色侧边栏问题。

问题复现的控件XAML代码

<TextBox
Grid.Row="1"
Style="{StaticResource MaterialDesignOutlinedTextBox}"
GotFocus="SizeTextBox_GotFocus" LostFocus="TextBox_LostFocus"
PreviewKeyDown="TextBox_PreviewKeyDown"
materialDesign:HintAssist.Hint="{x:Static p:Resources.Height}"
FontSize="25" Height="60" Padding="10" Margin="20"
materialDesign:TextFieldAssist.SuffixText="{Binding Unit, Converter={StaticResource UnitAbbreviation}}"
BorderBrush="{StaticResource PrimaryColorBrush}"
materialDesign:HintAssist.Background="{StaticResource ThirdColorBrush}"
materialDesign:ValidationAssist.Background="{StaticResource ThirdColorBrush}">

    <TextBox.Text>
        <Binding Path="SelectedParameter.Height" UpdateSourceTrigger="Explicit">
            <Binding.ValidationRules>
            <utility:NumericValidationRule/>
            </Binding.ValidationRules>
        </Binding>
    </TextBox.Text>
</TextBox>

已尝试的无效方案

  • 修改materialDesign:HintAssist下的所有属性,未解决问题
  • 自定义SmartHint样式:
    <TextBox.Resources>
        <Style TargetType="{x:Type materialDesign:SmartHint}">
            <Setter Property="Background" Value="red"/>
        </Style>
    </TextBox.Resources>
    
    仅能修改部分属性,边距、内边距等设置无效果,黑色侧边栏问题依然存在

有效修复方案

经确认该问题由库更新导致,通过设置materialDesign:HintAssist.HintPaddingBrush="Transparent"即可解决,修改后的TextBox代码如下:

<TextBox
Grid.Row="1"
Style="{StaticResource MaterialDesignOutlinedTextBox}"
GotFocus="SizeTextBox_GotFocus" LostFocus="TextBox_LostFocus"
PreviewKeyDown="TextBox_PreviewKeyDown"
materialDesign:HintAssist.Hint="{x:Static p:Resources.Height}"
FontSize="25" Height="60" Padding="10" Margin="20"
materialDesign:TextFieldAssist.SuffixText="{Binding Unit, Converter={StaticResource UnitAbbreviation}}"
BorderBrush="{StaticResource PrimaryColorBrush}"
materialDesign:HintAssist.Background="{StaticResource ThirdColorBrush}"
materialDesign:ValidationAssist.Background="{StaticResource ThirdColorBrush}"
materialDesign:HintAssist.HintPaddingBrush="Transparent"> <!-- 添加此行修复 -->

    <TextBox.Text>
        <Binding Path="SelectedParameter.Height" UpdateSourceTrigger="Explicit">
            <Binding.ValidationRules>
            <utility:NumericValidationRule/>
            </Binding.ValidationRules>
        </Binding>
    </TextBox.Text>
</TextBox>

内容的提问来源于stack exchange,提问作者Max

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 04:57:37