美化 Windows Form 应用程序

20

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


Telerik有一个工具可以做到这一点,你可以获得免费试用。请查看他们的演示:http://demos.telerik.com/aspnet-ajax/formdecorator/examples/default/defaultcs.aspx - peacemaker
此外,请查看devexpress的免费试用版:http://www.devexpress.com/products/NET/Controls/WinForms/Skins/ - peacemaker
http://www.componentfactory.com/product?id=3 有一个免费版本,非常不错(通过第一个链接在我的答案中引用)。 - Eric J.
5
从维护一款7年历史的WinForms应用程序的个人经验中得出结论:不要使用它。这些控件很难使用,在新的操作系统版本和主题下容易出现问题,对本地化和自动化支持较差,在您的应用程序停止更新之前就已经停止维护,并且在几年后看起来过时、花哨而不是"美观"。请使用标准内置控件,或者如果它们无法提供您需要的功能,请使用WPF。 - Dour High Arch
7个回答

8

漂亮的工作。多么有才华! - spaceman
你好...我在使用Visual Studio 2019为一个新的Winforms项目安装了它,但是当我尝试进入表单的设计模式时,会显示一个错误。应用程序以花哨的外观运行。也许与VS2019存在不兼容性问题?这是实际的设计师错误:无法显示此文件的设计师,因为它包含的类都无法进行设计 - jstuardo

7

“美化”和“Windows Forms”这两个词并不经常出现在同一句话中。WPF允许更好的设计机会。

有些框架允许你对WinForms应用程序进行换肤,这样可以通过配置而非代码来控制外观。

如何为我的Windows Forms应用程序设置皮肤?

还有一个CodeProject项目提供了一个皮肤工具,但我个人没有使用过。

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

曾经我在没有框架的情况下编写小型WinForms实用程序时,会对每个主要控件进行子类化,并在该子类中应用样式。对子类进行的任何更改都会影响整个应用程序。


从答案中我可以注意到一件事,所有的解决方案都是付费的,我想要像CSS那样的东西。看来我只能使用无聊的控件了 :P - unknownsatan
2
Krypton Tools的免费版本已经足够强大。WinForms遵循不同的设计范式,与CSS不同。如果您不接受WinForms的设计理念,您会感到经常在逆流中游泳。 - Eric J.

3
CSS样式在Windows Forms中很难实现,因为框架并没有真正考虑它。如果样式对您很重要,那么使用WPF可能会更容易些。
我知道有一个第三方库旨在帮助美化WinForms应用程序,DevExpress WinForms Skins。但我没有真正的使用经验,所以无法发表任何评论。

2
如果你在谷歌上搜索“.NET自定义主题”,那么你可以得到许多免费的样式来使用在你的项目中。
这里有一个列表,是某个用户在hackforums上制作的他的样式和自定义控件,我认为这些可以帮助你使你的表单“自定义”和“漂亮”:http://pastebin.com/1nvZ08kx

2
您不能使用CSS来为WinForms应用程序设置样式,但我认为这不是您的意思。
至于"美化"您的应用程序,有许多第三方工具可用。最受欢迎的工具包括(没有特定顺序):
- Telerik - DevExpress - Infragistics - ComponentOne - 还有许多其他工具
人们往往会对他们的第三方设计工具产生强烈的信仰,并且在SO上花费了大量篇幅来介绍每个第三方设计工具的优点。

0

0

我以前使用过WebBrowser控件创建界面。你可以使用HTML和CSS来创建一个漂亮的“表单”。它需要更多的编码,但它是有效的。用户需要安装IE才能使用该控件。这里有一个VB.Net示例: 使用VB .Net WebBrowser控件构建WinForm用户界面

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接