如何使用完全自定义的用户界面创建C#程序?

时间:2014-03-11 01:53:48

标签: visual-studio-express

几年前,我尝试使用C#进行编程,当时它似乎提供了一种灵活的构建用户界面的方法。例如,有一个用于创建UI的编辑器。 我刚下载了Visual Studio Express 2013,它似乎完全改变了。在任何地方都没有我可以看到的UI编辑器,并且有一个奇怪的XAML文件没有明显记录,并且没有来自Microsoft的示例程序似乎与Visual Studio Express 2013兼容。 如何创建UI并将其外观控制到像素?或者是不再允许的? 我是否应该考虑完全跳过Visual Studio Express并使用Makefile构建? 感谢。

2 个答案:

答案 0 :(得分:4)

我不完全确定你在说什么,但在Visual Studio和C#中有两个独立的UI框架。几年前你可能使用的Winforms和WPF(Windows Presentation Foundation),这是一种使用XAML标记来定义界面的更新技术。

通过单击.cs(对于WinForms)或.xaml(对于WPF)文件,两者都在Visual Studio中提供可视化编辑器。创建项目时,请确认您选择的两个中的哪一个。

此外,我还要注意,当您选择并创建这些类型的项目时,Visual Studio默认打开可视UI编辑器。

如果您想了解后一项技术(WPF),请参阅此处:http://msdn.microsoft.com/en-us/library/aa970268(v=vs.110).aspx

答案 1 :(得分:3)

Professional Windows UIs不是使用拖放技术创建的。

  • 您使用过的时间被称为“winforms”。这是一项非常古老的技术,无意创建丰富,高度交互的UI。不,它远没有“灵活”。它不允许任何类型的自定义,它会强迫你使用默认的,丑陋的东西,或者为了定制任何东西而诉诸无尽的可怕黑客。它表现出“少用更多代码”程序类型的方法,而不是“用更少的钱做更多”您在基于XAML的技术中找到的声明性美。 不建议用于任何新项目,仅维护旧版应用程序。

  • 如果您对Windows UI设计非常认真,则需要学习XAML并使用任何基于XAML的技术,例如WPFWinRT

  • 如果您认真对待应用程序结构并正确构建Windows应用程序的不同层,则需要了解MVVMDataBinding

  • 如果要创建完全自定义的UI,则需要为控件创建自定义Styles and Templates。如果需要,您可以使用Expression Blend,或者在纯手写的XAML中创建它们。

  • 在MSDN和非官方来源(例如StackOverflow)上都有大量关于所有这些主题的文档。请参阅本答案中的所有链接来源。

  • 如果您仍然喜欢使用拖放方法来创建Windows UI,则可以使用Visual Studio Designer for XAML-based UIs来执行此操作,但请注意,此方法存在许多缺点: Drawbacks of using the Visual Studio designer drag and drop approach to create XAML-Based UIs