.net - 如何让窗体看起来更漂亮

标签 .net winforms

我有一个用 C# 编写的 Windows 窗体应用程序。我必须使我的表单设计更具吸引力(Windows 7 外观)。是否有任何第三方工具可以使表单看起来更漂亮?

最佳答案

如果您尝试使用 Windows Aero 用户界面为内置控件设置主题,您可以在线找到几个嵌入式控件库。

  • Windows Forms Aero
  • Aero.Controls
  • Microsoft's Windows API Code Pack for the .NET Framework
  • Fully themed Windows Vista Controls

  • 这些库中的大多数都包含对桌面窗口管理器功能的支持,包括将 Aero Glass 效果添加到您的应用程序。 Daniel Moth 在他博客上的一系列文章中更详细地解释了这一点:
  • Vista: Glass in C#
  • Glass in C#, an alternative approach
  • Vista glass answers and DwmEnableBlurBehindWindow

  • 当然,您可以快速进入头脑。特别是,标准控件无法在玻璃上正确渲染,因为黑色被渲染为透明。任何显示黑色的东西
    文本看起来会褪色并且无法阅读。在扩展玻璃区域上绘制文本和图像的正确方法如下所述:Drawing smooth text and pictures on the extended glass area .

    您还必须记住,这些功能仅在 Windows Vista 和更高版本上可用。如果您的应用程序需要在 Windows XP 下运行(它可能会这样做),您将必须确保您的应用程序能够优雅地回退,并且您的 UI 在那里看起来也很好。

    如果您需要有关 Aero Glass 效果的更多信息,请搜索 Stack Overflow。我自己和许多其他人已经发布了很多相关问题的答案。例如,this one , 和 this one , 和 this one .

    但是,总的来说,我的建议是谨慎使用玻璃效果,并且仅在您真正觉得它为您的应用程序添加一些东西时才使用。不要因为你可以就扔掉无缘无故的眼睛糖果。最重要的是从典型用户的角度关注应用程序的可用性。没有理由增加不提供任何真正可用性优势的额外复杂性。

    关于.net - 如何让窗体看起来更漂亮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5013485/

    相关文章:

    c# - 是否可以使用查询参数来填充 IN 关键字

    c# - 将现有的 Windows 窗体应用程序移植到 Web

    c# - 为什么 Extender Provider Properties 在 C# 窗口应用程序中的 Designer 中丢失?

    c# - 如何启动没有可见窗口的 .net Windows 窗体应用程序?

    c# - 为什么 linq to object 手动实现迭代器?

    .net - 解析实例 - Autofac

    c# - 为什么 List.Sort() 是实例方法而 Array.Sort() 是静态的?

    c# - 如何使用正则表达式从SQL语句中提取参数名称

    wpf - WPF 和 WinForms 可以在应用程序中混合使用吗?

    c# - RichTextBox 从右到左选项中的错误