可编辑的组合框表达式深色主题错误

Posted

技术标签:

【中文标题】可编辑的组合框表达式深色主题错误【英文标题】:Editable combobox expressionDark theme bug 【发布时间】:2012-07-04 20:19:16 【问题描述】:

我正在为我正在开发的 WPF 应用程序使用 ExpressionDark 主题。 但是,在使用可编辑组合框时,我注意到了一个相当烦人的错误。

如下图所示,当我输入一个比控件宽度长的文本时,内容会超出组合框:

我用默认的windows主题试过了,这个bug不存在,所以我猜是ExpressionDark主题有问题。

我已经探索了一段时间的主题 XAML,但我至今找不到问题的根源。

也许你们中的一些人已经遇到过这个问题和/或知道如何解决这个问题?

非常感谢!

P.S.:使用的是可以在 codeplex 上找到的 ExpressionDark 主题:http://wpfthemes.codeplex.com/

【问题讨论】:

【参考方案1】:

好吧,我找到了问题所在。这确实是 ExpressionDarkTheme 中的一个错误。如果其他人遇到此问题,这是解决方案。

在 ExpressionDark.xaml 文件中,搜索名为“ComboBoxTextBox”的 ControlTemplate。目标是在其中放置一个滚动查看器,以便内容可以水平滚动。

只要换行

<Border x:Name="PART_ContentHost" Focusable="False" Background="TemplateBinding Background" />

<Border Focusable="False" Background="TemplateBinding Background">
    <ScrollViewer Margin="0" x:Name="PART_ContentHost" Style="DynamicResource NuclearScrollViewer" />
</Border>

瞧!问题解决了。

【讨论】:

以上是关于可编辑的组合框表达式深色主题错误的主要内容,如果未能解决你的问题,请参考以下文章

拖放到可编辑的组合框上[重复]

在可编辑网格中,如何使 Ext 组合框在选择项目时立即完成编辑模式?

如何在 HTML/Javascript 中创建可编辑的组合框?

Swing组件

如何在HTML / Javascript中创建可编辑的组合框?

如何编辑 Visual Studio Code 的默认深色主题?