【问题标题】:Beautifying a Windows Form application [closed]美化 Windows 窗体应用程序 [关闭]
【发布时间】:2012-08-01 22:54:23
【问题描述】:

我将为我的 C# 项目创建一个小型数据库驱动的 Windows Forms 应用程序。我想像我们在使用CSS 的网站上一样美化它。是否有任何资源或网站可以帮助我美化我的应用程序?

【问题讨论】:

  • Telerik 有一个工具可以做到这一点,您可以获得免费试用。查看他们的演示:demos.telerik.com/aspnet-ajax/formdecorator/examples/default/…
  • 另外,通过 devexpress 查看免费试用版:devexpress.com/products/NET/Controls/WinForms/Skins
  • componentfactory.com/product?id=3 有一个免费版本,非常好(通过第一个链接在我的回答中引用)。
  • 维护一个 7 岁的 WinForms 应用程序的个人经验:不要。这些东西非常难以使用,倾向于与新的操作系统版本和主题中断,对本地化和自动化的支持很差,在你的应用程序运行之前很久就报废了,几年后,看起来过时和花哨的不”美丽的”。使用标准的内置控件,如果这些控件不提供您需要的功能,请使用 WPF。

标签: c# .net winforms c#-4.0


【解决方案1】:

你可以试试我前段时间建的一个库。

http://www.codeproject.com/Articles/33716/Fancy-Windows-Forms

【讨论】:

  • 漂亮的作品。多么有才华!
  • 您好...我为一个新的 Winforms 项目安装了它,使用 Visual Studio 2019,但是当我尝试进入表单的设计模式时,显示错误。应用程序以精美的外观运行。也许VS2019存在不兼容问题?这是实际的设计器错误:The designer for this file cannot be displayed because none of the classes it contains can be designed
【解决方案2】:

“美化”和“Windows 窗体”不经常用在同一个句子中。 WPF 提供了更好的设计机会。

某些框架允许您为 WinForms 应用程序设置皮肤,这使您可以通过配置而不是代码来驱动查看。

How do I skin my Windows Forms application?

还有一个提供skinner的CodeProject项目,虽然我没有亲自使用过

http://catalog.codeproject.com/Articles/415102/WinForms-Form-Skin

当我过去编写小型 WinForms 实用程序而无法访问框架时,我会将每个主要控件子类化,并在该子类中应用一种样式。对子类的一项更改会影响整个应用程序。

【讨论】:

  • 从答案中我注意到一件事,所有解决方案都是付费的,我想要 CSS 之类的东西。看起来我只能使用无聊的控件:P
  • Krypton Tools 的免费版本会让你走得更远。 WinForms 遵循与 CSS 不同的设计范式。如果你不接受 WinForms 的设计理念,你会觉得自己经常逆流而上。
【解决方案3】:

类似 CSS 的样式在 Windows 窗体中很困难,因为构建框架时并没有真正考虑到它。如果样式对您很重要,那么使用 WPF 可能会更轻松。

我知道一个旨在帮助对 WinForms 应用程序进行皮肤设计的第三方库,DevExpress WinForms Skins。不过,我没有这方面的实际经验,所以我无法对此发表任何评论。

【讨论】:

    【解决方案4】:

    您不能使用 CSS 来设置 WinForms 应用程序的样式,但我认为这不是您的意思。

    就“美化”您的应用程序而言,有许多可用的第三方工具。最受欢迎的是(排名不分先后):

    • Telerik
    • DevExpress
    • 基础设施
    • 组件一
    • 很多很多其他的

    人们往往对他们的第 3 方设计工具充满信心,并且大量的墨水已经洒在 SO 上,以了解每个第 3 方设计工具的好处。

    【讨论】:

      【解决方案5】:

      如果您在 Google 上搜索“.NET 自定义主题”,那么您可以获得许多免费样式以在您的项目中使用。

      这是一些用户在 hackforums 上列出的他的样式和自定义控件的列表,我认为这有助于使您的表单“自定义”和“Nice”:http://pastebin.com/1nvZ08kx

      【讨论】:

        【解决方案6】:

        我之前使用过 WebBrowser 控件来创建界面。有了它,您可以使用 HTML 和 CSS 创建一个漂亮的“表单”。它需要更多的编码,但它可以工作。用户需要安装 IE 才能使用该控件。这里有一个 VB.Net 示例: Using VB .Net WebBrowser Control To Build WinForm User Interface

        无论如何,这是另一种选择。

        【讨论】:

          【解决方案7】:

          如果您对用于设计 Windows 窗体应用程序的第三方工具感兴趣,您还可以查看 Infragistic 的工具 - AppStylist for Windows Forms 控件。有a short video for the runtime version of this tool

          另一个有用的入门页面是Application Styling Framework

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2016-10-07
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-11-08
            • 1970-01-01
            相关资源
            最近更新 更多