对MFC/.net/WPF感到困惑

Ato*_*ble 10 .net c# c++ wpf mfc

我想为Windows创建一个桌面应用程序,我知道有一种基于Win32 API的应用程序和另一种基于.net框架的应用程序.

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

从我看到它们是图形API,我将为我的应用程序选择哪个?

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

Kat*_*ory 27

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

如果您了解C++并打算部署到没有.NET Framework的计算机,MFC是一个不错的选择.它创建了具有现代外观的UI并支持Windows 7功能.如果您愿意学习C#并使用.NET Framework部署到计算机,请考虑使用WPF或Windows Forms.对于基本的"拖动按钮,双击以编辑处理程序,在单击处理程序中键入一些代码"应用程序,它们之间没有区别.WPF更好地支持图形清晰度(渐变,透明度)和多点触控,Windows 7好东西等等.有些人发现学习起来比较困难,但我认为这只是因为他们很久以前就学过了Windows Forms.如果你从无到有,你可以学到任何东西,也可以学习新的东西.

一旦选择了框架,MSDN就会有很多"入门"主题.

  • 你忘记了WPF优于win表单的主要优点:WPF应用程序在运行时使用视频加速器(默认为默认)而不是主CPU.对于高性能的考虑,这一点非常重要. (2认同)