【问题标题】:WPF C# change resource dictionary accent color in codeWPF C#在代码中更改资源字典的强调色
【发布时间】:2021-08-16 07:12:55
【问题描述】:

我有一个文本框enter image description here 选中时文本框突出显示,并使用 app.xaml 中资源字典中的强调色

                <ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Primary/MaterialDesignColor.Green.xaml" />
            <ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Accent/MaterialDesignColor.Lime.xaml" />

& 如果用户名少于 8 个字符,我希望强调色变为红色,有什么办法吗?

【问题讨论】:

  • 你试过什么。此外,使用 SO 来托管您的图像而不是提供一些外部链接可能是一个好主意。人们可能对点击外部链接(恶意软件)感到不舒服
  • 我试图进行绑定并设置一个根据文本框长度而变化的值,但我对绑定不太熟悉,所以我不确定这是否可行。我更新了 gif 的链接,谢谢 :)

标签: c# xml wpf resourcedictionary


【解决方案1】:

您必须在本地覆盖该文本框的模板才能添加在 IValueConverter 上触发的数据触发器。 如果没有看到有问题的模板,我真的无法更具体,因为我们不知道口音是如何设置的。
延伸阅读:

【讨论】:

  • 感谢您的链接和建议,我会试试这个并告诉您是否有效。
【解决方案2】:

我不确定您的解释是否清楚您的问题是什么。据我了解,您问的是如果文本少于 8 个字符,您将如何更改文本的颜色? 如果这是您的问题,那么“string.Length”就足够了。

【讨论】:

  • 它不是我要更改颜色的文本,如果您看到我发布的 gif,它会显示我要重新着色的内容,它位于底部的行,位于文本下方.它从 app.xaml 中的资源字典中获取颜色,我想知道是否可以根据文本框中字符串的长度来更改它
猜你喜欢
  • 2011-04-02
  • 1970-01-01
  • 1970-01-01
  • 2012-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多