【问题标题】:Custom C# Form Design自定义 C# 表单设计
【发布时间】:2011-09-05 11:23:41
【问题描述】:

我有点卡在这个上,我知道可以完成但不确定所需的步骤。

我想为我必须创建的应用程序创建一个完全自定义的用户界面设计。我可以更改表单背景等等,但这有点复杂。

下面显示了我所指的更改类型的示例图像,与大多数应用程序使用的当前 UI 相比,您可以看到它的更改相当大。

【问题讨论】:

  • 在 WPF 中可能比在 WinForms 中更容易。这应该是WinForm,还是可以选择WPF?
  • 使用 WinForms 几乎不可能,但使用 WPF 非常容易。
  • 也许我有点愤世嫉俗,但每当我看到这样的用户界面时,我立刻会想“这个应用程序可能是一个有问题的垃圾,他们决定用渐变和阴影覆盖而不是修复它"
  • 第三方控制工具包呢? devexpress.com/Products/Free/NetOffer/#aspdevexpress 有一些免费的花式
  • 虽然我讨厌“你应该在 xyz 中这样做”,但当你清楚地知道你的需求是什么时,也许你可以解释为什么你需要 winforms 而不是 wpf。你在使用像 windows 3.1/windows nt 这样的旧系统吗?

标签: c# winforms user-interface


【解决方案1】:

由于您不能使用 WPF(为什么?!),您需要为所有控件创建自定义类,继承和覆盖 OnPaint。使用 C# 代码完成这将是一项艰巨的工作。

Here is a tutorial 展示了为 WinForms 创建自定义 UI 的许多步骤。

【讨论】:

  • 我无法控制的部分合同与我无关:(
  • 感谢伟大的教程网站,遗憾的是该网站有很多 404 但设法破解并削减我的方式:)
  • 链接对我不起作用,我收到“dns_unresolved_hostname”
  • @Matt,不幸的是,链接似乎在这么多年后失效了。我找到了另一个类似的例子并更新了答案。
  • @ErickPetrucelli - 我知道,发生这种情况......谢谢你的更新!
【解决方案2】:

看看 Windows Presentation Foundation (WPF),它旨在允许创建丰富的图形 UI 应用程序,就像您提供的示例一样。它侧重于将前端(图形 UI)与背后的逻辑(您可以使用 C#、VB 等编写代码)分开

在布局 UI 的方式(使用 XML 格式)方面与表单非常不同,但它都是围绕 .Net 框架构建的,这意味着会有一定程度的熟悉度。

查看这些链接以开始使用:

http://www.wpftutorial.net/WPFIntroduction.html

http://www.wpf-training-guide.com/

【讨论】:

  • 第二个链接好像坏了——你能提供一个新的吗?
【解决方案3】:

我建议您使用 WPF,因为您的问题似乎并不局限于使用 WinForms。它有很多我可以在这个屏幕截图中看到的开箱即用的效果,使用 WinForms 实现起来会更加困难。

每个可重复使用的控件都可以单独创建并在以后重复使用。 WPF 具有高度可扩展性,您可以从现有控件中组合新控件。您可以使用现有的按钮控件创建“上下”控件,也许您已经找到了一个适合您需要的现有控件。

样式在 WPF 中单独完成,因此您可以使用模板应用自定义样式。

更新:

当您必须使用 winforms 时,最简单的解决方案是使用固定大小的窗口,并让您的设计师为所有按钮等创建图像。 ... 老式切片技术。

您基本上必须分解设计,以便尽可能多地重复使用它。 例如。您将有几个按钮背景来描述它们的各种状态。 (向下/向上/悬停) 轨道信息顶部的发光可以存储在单独的图像中,因此可以应用在文本的“顶部”。

【讨论】:

  • 是的,我就是这么想的 :(
猜你喜欢
  • 1970-01-01
  • 2012-09-28
  • 2010-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-06
  • 2013-07-15
  • 1970-01-01
相关资源
最近更新 更多