更改 Windows 经典主题中禁用列表框的背景颜色
我正在开发一个必须使用 Windows Classic 主题运行的 WPF 应用程序。该应用程序创建一个包含列表框的对话框。当对话框显示时,必须将其禁用 1 秒才能接受任何输入。我使用样式触发器来完成此操作,并且它有效。但是,列表框在禁用时显示白色背景,我似乎无法摆脱它。使用 aero 主题时,以下样式资源修复了该问题:
<SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Transparent"/>
但使用 Windows 经典主题时,白色背景再次出现。我该如何补救经典主题的情况???
I am developing a WPF application that must run using Windows Classic theme. The application creates a dialog box containing a ListBox. When the dialog box is shown, it must be disabled for 1s before accepting any input. I am accomplishing this with a style trigger, and it works. However, the ListBox shows a white background when it's disabled, which I can't seem to get rid of. When using the aero theme, the following style resource fixes the issue:
<SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Transparent"/>
But when using Windows Classic theme, the white background reappears. How can i remedy the situation for Classic theme???
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
经过进一步研究,我发现Windows Classic主题使用WindowBrushKey而不是ControlBrushKey。因此,这解决了 Aero 和 Classic 主题的问题:
After further research, I discovered that the Windows Classic theme uses WindowBrushKey instead of ControlBrushKey. Therefore, this fixes the issue for both Aero and Classic themes: