MicrosoftOffice2010是使用WPF还是简单的旧MFC?

MicrosoftOffice2010是使用WPF还是简单的旧MFC?,wpf,mfc,mfc-feature-pack,office-2010,Wpf,Mfc,Mfc Feature Pack,Office 2010,我使用WPF已经有一段时间了,我正试图重现他们办公套件中一些漂亮的UI功能。虽然WPF非常简单,但我想知道如何使用MFC功能包(我可能不得不使用它,因为我的公司尚未批准使用WPF)。由于Office2007引入了Fluent UI,我想知道微软是否真的在VS2010或ExpressionBlend中使用WPF,尤其是在Office2010中。 我希望这个问题不是离题。据我所知,它没有以任何方式使用WPF。事实上,它大部分仍然是用C++编写的。实际上,微软在WPF中发布的唯一的“大”应用是Visu

我使用WPF已经有一段时间了,我正试图重现他们办公套件中一些漂亮的UI功能。虽然WPF非常简单,但我想知道如何使用MFC功能包(我可能不得不使用它,因为我的公司尚未批准使用WPF)。由于Office2007引入了Fluent UI,我想知道微软是否真的在VS2010或ExpressionBlend中使用WPF,尤其是在Office2010中。
我希望这个问题不是离题。

据我所知,它没有以任何方式使用WPF。事实上,它大部分仍然是用C++编写的。实际上,微软在WPF中发布的唯一的“大”应用是Visual Studio 2010和Expple Finuy。

< P>你知道WPF(用.NETFramework)只是Win32和COM(直接T2D等)的一层,所有这些都可以从普通的C++访问,更不用说MFC了。他们已经把C++中的所有色带代码从2007开始,所以2010接口不难。
要回答你想问的问题,不,Office不使用WPF。只有Visual Studio使用它。

Office 2010不使用WPF。事实上,它也不使用MFC。Office传统上使用自定义UI工具包,甚至在Ribbon出现之前也是如此。但是,您只需要一个主要的第一方应用程序就可以确保WPF作为UI平台的可行性。当该应用程序恰好是VisualStudio时尤其如此,因为每天都有成千上万的Microsoft员工使用VisualStudio

但这并不意味着WPF是与Ribbon一起使用的最佳UI技术。MicrosoftWPF功能区错误地处理了许多角落案例,我测试过的所有主要商业托管代码功能区(WPF或Winforms)也是如此。很难复制Office Ribbon,因为有很多微妙之处很难预料,只有在用户遇到紧急情况时才会出现

Office Ribbon花了200多人-年的时间,并由成千上万的测试人员使用。(詹森·哈里斯(Jensen Harris)估计,在UX09上,Office UI团队共有15名PM、30名开发人员、30名测试人员,以及6名设计师和UI研究人员。)这是测试最好的功能区,但不幸的是,它是微软以外的开发人员无法使用的功能区


第二个最可靠的功能区框架可能是Windows 7功能区,它由Paint和写字板使用。这一个在Windows7SDK中可用,并已被后端口到Vista。本地代码和GDI,因此它面向C++开发人员。请注意,它也没有绑定到MFC。

WPF肯定不是Win32上的层(但它确实使用DirectX)。Windows窗体是Win32上的一个层。。。在WPF中,Win32上唯一的依赖项是窗口本身(它只是PresentationSource的一个特定实现),以及一些系统依赖项,如OpenFileDialog。@Thomas,这怎么不是?窗口部分是win32,其余部分是com组件,正如我上面所说的。窗口本身是win32,只是因为它需要在Windows中显示;窗口中呈现的所有内容都与Win32无关,控件没有WinForms中的句柄,并且它们不是由系统绘制的。实际上,它们都是在
WM\u PAINT
上呈现的。我还是不明白你的意思。当然,这是知道何时在Windows中重新绘制窗口的唯一方法。我觉得有趣的是,他们在一个只能在内部使用的控件上投入了大量资金。除此之外,我发现微软制作UI框架(Winforms、WPF)真的很有趣,但最新的Office客户端都不是用它们构建的。似乎在WPF中编写最新的cient是非常有商业意义的,因为他们可能需要构建自定义控件(需要测试),然后他们可以免费向WPF社区提供这些控件。甚至Office加载项也不能使用Office中的所有功能区功能。