【问题标题】:Visual Styles not working (C# VS2010)视觉样式不起作用(C# VS2010)
【发布时间】:2011-12-17 11:53:57
【问题描述】:

我的 WinForm 应用程序(.net framework 2)上的视觉样式有问题,我在谷歌上搜索了很长时间都找不到任何解决方案。

此项目中的表单在 IDE 中看起来是样式化的(应该如此),但在运行时它们似乎没有在任何操作系统中应用任何样式。

我试过了:

1) 放入我的program.cs

        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.DoEvents();

在创建表单之前并没有帮助

2) 在表单构造函数中插入 System.Windows.Forms.Application.EnableVisualStyles();

2)删除,创建新的清单也无济于事。

经过一些调试,我发现 VisualStyleInformation.IsEnabledByUser 正在返回 FALSE 而不是应该返回的 True。我有非常相似的应用程序,使用相同的资源和库,它们工作得非常好,应用了所有样式,并且它为 IsEnabledByUser 返回 TRUE。

有人知道如何解决吗?

【问题讨论】:

    标签: c# .net winforms


    【解决方案1】:

    在您执行的所有操作旁边,您还应该确保将控件的 FlatStyle 属性设置为 FlatStyle.System。检查您的所有控件是否都是如此,包括您的表单。

    【讨论】:

    • 感谢您的回复我已经检查了所有控件的此属性,并且所有控件都将 FlatStyle 属性设置为标准。看起来表单没有这样的属性。对于所有拥有它的元素,我已将此属性更改为 System ,但这无济于事。我检查了我的另一个项目,它对 FlatStyle 没有问题,并且它对所有控件的 FlatStyle 属性都有标准。
    • 我搜索了 FlatStyle。并且似乎从 .NET Framework 2.0 开始,无需将 FlatStyle 设置为 System 即可应用视觉样式。但值得一试。请问还有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-28
    • 2011-10-24
    • 2019-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多