【发布时间】:2016-09-18 18:15:34
【问题描述】:
所以当我在我的 Win10 PC 上创建一个 winforms 项目并做任何我喜欢做的事情时,该项目中的所有表单都具有这种 Metro Style UI 设计。 但是,如果我在同一台 PC 上创建一个 dll 项目,并引用我认为与 winforms 项目相同的 System.Windows.Forms dll,我可以从 dll 创建的表单看起来有点像我在Win7 并启用了使用 XpVisualStyles 选项。 即:作为一个基本示例:默认情况下,表单上的所有按钮都设置为 3d 边框样式,尝试让它们变平并不容易(如果它们至少应该看起来不错的话)
问题是:为什么从 dll 创建的表单看起来与从 winforms 应用程序创建的表单看起来不同,尽管它们都引用了相同的 dll(System.Windows.Forms 我什至检查了哈希和版本)? 第二部分如何使从 dll 创建的表单看起来像来自 winforms 项目的表单?
附加信息:通过引用来自 1 个控制台项目和 2 个其他 winforms 项目的 dll 创建了 dll 表单。两者看起来都像 Xp。
【问题讨论】:
-
看程序的主入口点,
Main方法,一般在Program.cs,看Application.Run(new SomeForm());前面有没有Application.EnableVisualStyles();。它可以在您的应用程序中启用视觉样式。