【发布时间】:2010-01-11 05:00:04
【问题描述】:
我有一些需要在 WPF 窗口中使用的 WinForms 控件。我能够让控件正常显示,并且一切正常,但我遇到了一个问题:所有 WinForms 控件都没有样式。
我希望 WinForms 控件至少使用默认的操作系统样式(就像我在 WinForms 应用程序中看到的那样)。有什么方法可以控制这一点,还是我必须按照它们的方式忍受这些控制?
【问题讨论】:
我有一些需要在 WPF 窗口中使用的 WinForms 控件。我能够让控件正常显示,并且一切正常,但我遇到了一个问题:所有 WinForms 控件都没有样式。
我希望 WinForms 控件至少使用默认的操作系统样式(就像我在 WinForms 应用程序中看到的那样)。有什么方法可以控制这一点,还是我必须按照它们的方式忍受这些控制?
【问题讨论】:
WinForms 控件不能使用 WPF 样式,因为 Windows 窗体不理解 WPF 样式和模板系统。
要让他们使用“OS 风格”(OS 视觉主题),请尝试在 Main 方法中调用 System.Windows.Forms.Application.EnableVisualStyles。 (我认为 WPF 会自动处理此问题,但我想这不是您所看到的。)必须在创建任何控件之前调用它!
【讨论】: