选项 1:( .Net
如果您对 Windows 应用程序感兴趣,则适用)
与@Branyac 的回答相反,我建议您宁愿跳过 winforms 部分,直接使用当前的相关技术(基于 XAML)
任何人在 2013 年现在就开始学习 winforms 是没有意义的,因为:
- 它已经过时了。没有人将它用于任何新项目,仅用于维护遗留应用程序。
- 它不支持深度定制(就像你可以通过 WPF 在 WPF 中找到的那样)
ControlTemplates
.
- 它(本机)不支持许多有趣的视觉功能(例如
Animations
)
- 它是软件渲染的,不支持硬件加速,因此许多视觉密集型应用程序不可能在winforms中完成。
- 它不公开高级
DataBinding
功能,要求您输入更多代码并实现更少。
- 它不公开任何类型的Document API,因此您可能在 HTML 中轻松实现的许多事情在 winforms 中要困难得多。
- 它不支持目前由社区普遍推动的最先进的开发模式(MVVM),因此再次需要更多的代码来实现更少的目标。
- 它(本机)不支持UI 虚拟化,如果您处理大量数据,它确实可以改变游戏规则。
我建议您使用 Microsoft 在过去 5 / 6 年中一直在积极开发的任何基于 XAML 的技术,而不是处理这种有限的 UI 技术,即:
- WPF(Windows 演示基金会)。
- 在 Windows XP 及更高版本上运行,需要 .Net 框架。拥有全权。是基于 XAML 的。
- 银光
- 跨平台,在浏览器中运行,也是基于 XAML,具有更有限的功能,具有 WPF 功能的子集。
- WinRT
- 在 Windows 8 及更高版本中运行,也是基于 XAML。还包含 WPF 功能的子集。
使用当前技术的优势是无穷无尽的,其中一些在此处进行了讨论,并在整个网络上进行了讨论。
除了上述所有内容之外,您的 HTML 背景将真正帮助您获得 XAML 心态。XAML 是一种标记语言以及 HTML,但具有更多功能。您使用 XAML 在 WPF 中定义 UI,然后将 UI 数据绑定到相关的 ViewModel 和包含数据的模型。
winforms 方法过于程序化,到处都需要大量样板代码。我会说它没有make it easy to build graphical applications
。
选项 2:继续使用 HTML + Javascript 方式。