WPF应用程序中的WinForms对话框:控件看起来像.NET 2.0

我有一个WinForms应用程序,并开始将其转换为WPF。 为了减少工作量,我的想法是让旧的对话框窗口成为WinForms。 在VS2010设计器中,对话框看起来很正常(使用.NET 3.5 / 4.0控件)但是如果我运行我的程序,所有WinForms控件都会变成旧样式,它看起来像.NET 2.0(我想你知道我的意思,那个灰色所有控件的斜角样式……)

那里发生了什么? 有什么办法解决这个问题?

您必须调用System.Windows.Forms.Application.EnableVisualStyles()以启用Windows窗体的系统样式。 WinForms项目模板默认包含该调用; WPF模板缺少它,因为WPF控件不需要它。