Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 对MFC/.net/WPF感到困惑_C#_.net_C++_Wpf_Mfc - Fatal编程技术网

C# 对MFC/.net/WPF感到困惑

C# 对MFC/.net/WPF感到困惑,c#,.net,c++,wpf,mfc,C#,.net,C++,Wpf,Mfc,我想为windows创建一个桌面应用程序,我知道有一种应用程序基于Win32 API,另一种基于.net framework 那么,MFC、WPF、WinForm等是什么呢 据我所见,它们是图形化的API,那么我会为我的应用程序选择哪一个呢 是否有任何好的资源(例如书籍)来学习技术? < P> MFC是一个在本地(非托管)C++中创建GUI应用程序的框架,就像你在大学里学习的C++一样。NET Framework支持用C++/CLI、C#、VB.NET或许多其他语言编写托管代码。在.NET Fr

我想为windows创建一个桌面应用程序,我知道有一种应用程序基于Win32 API,另一种基于.net framework

那么,MFC、WPF、WinForm等是什么呢

据我所见,它们是图形化的API,那么我会为我的应用程序选择哪一个呢


是否有任何好的资源(例如书籍)来学习技术?

< P> MFC是一个在本地(非托管)C++中创建GUI应用程序的框架,就像你在大学里学习的C++一样。NET Framework支持用C++/CLI、C#、VB.NET或许多其他语言编写托管代码。在.NET Framework上构建桌面GUI应用程序有两种方法-Windows窗体和WPF。Windows窗体较旧,不再处于活动开发状态。WPF较新

如果您知道C++,并打算在没有.NET框架的情况下部署到机器上,MFC是一个不错的选择。它创建了外观现代的UI,并支持Windows 7功能。如果您愿意学习C语言并使用.NETFramework部署到机器,请考虑WPF或Windows窗体。对于基本的“拖动按钮,双击以编辑处理程序,在单击处理程序中键入一些代码”应用程序,它们之间没有区别。WPF对图形的酷性(渐变、透明度)和多点触摸、Windows7等有更好的支持。有些人觉得它更难学,但我认为这只是因为他们很久以前就学会了Windows窗体。如果你从零开始,你也可以学习,也可以学习新的


一旦您选择了一个框架,MSDN就有很多“入门”主题。

您忘记了WPF相对于win表单的主要优势:WPF应用程序在运行时使用视频加速器(bu默认),而不是主CPU。出于性能考虑,了解这一点非常重要。@Liran对于某些类型的应用程序,确实如此。但对于“三个文本框和一个按钮”之类的应用程序来说,情况并非如此。