Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.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# WPF和Silverlight应用程序之间有什么区别?_C#_Wpf_Silverlight - Fatal编程技术网

C# WPF和Silverlight应用程序之间有什么区别?

C# WPF和Silverlight应用程序之间有什么区别?,c#,wpf,silverlight,C#,Wpf,Silverlight,WPF和Silverlight应用程序之间有什么区别?它们是一样的吗?WPF本质上是Winforms的替代品,因为它是一个建立在.Net(3+)平台上的桌面应用程序平台 Silverlight表示通过浏览器插件交付的WPF的子集,非常类似于Flash/Flex Silverlight(代号为WPF/E)是一种跨平台、跨浏览器的浏览器插件,它包含基于WPF的技术(包括XAML)[17],为多个操作系统(包括Windows Vista、Windows XP和Mac OS X)提供视频、矢量图形和动画

WPF和Silverlight应用程序之间有什么区别?它们是一样的吗?

WPF本质上是Winforms的替代品,因为它是一个建立在.Net(3+)平台上的桌面应用程序平台

Silverlight表示通过浏览器插件交付的WPF的子集,非常类似于Flash/Flex

Silverlight(代号为WPF/E)是一种跨平台、跨浏览器的浏览器插件,它包含基于WPF的技术(包括XAML)[17],为多个操作系统(包括Windows Vista、Windows XP和Mac OS X)提供视频、矢量图形和动画等功能,通过微软批准的第三方开发人员为Linux发行版提供端口。[18]具体来说,它目前作为Mozilla Firefox、Internet Explorer 6及更高版本和Apple Safari的附加组件提供。Silverlight和WPF只共享XAML表示层


WPF基于桌面CLR,桌面CLR是CLR的完整版本


Silverlight基于更小、更紧凑的CLR,它提供了很好的体验,但没有CLR的全部功能。它还有一个小得多的BCL版本

Silverlight是WPF的一个子集。曾经它被称为WPF/E(WPF everywhere)。事实上,基本框架是相似的,但并不相同


有关更多信息,请参见此:

Silverlight是Microsoft用于构建下一代Web客户端应用程序的最新开发平台 (WPF)是微软用于构建下一代Windows客户端应用程序的最新开发平台

Silverlight通常被认为是 WPF,并且是一个XAML WPF通常被认为是.NET Framework的一个子集

Silverlight支持跨操作系统、跨浏览器、跨设备 Windows客户端用户的WPF

为了在客户端机器上运行Silverlight应用程序,我们需要安装Silverlight 客户端计算机上的软件一次 另一方面,WPF不支持任何插件机制;相反,我们需要安装一个 已完成的WPF客户端应用程序

Silverlight应用程序托管在web服务器和网页中。
WPF应用程序可以作为独立应用程序部署,

Silverlight是WPF的一个子集,因此功能较少,但更具可移植性。WPF既可以在浏览器中运行,也可以在Windows中作为WinForms样式的应用程序运行,而Silverlight只能在浏览器中运行。WPF打算在Windows系统上运行,而Silverlight在Windows或Mac上运行,也可以通过Moonlight在Linux上运行


如果不清楚何时使用它们,我发现一个有用的博客可以更好地解释这一点:

wpf是窗口应用程序,Silverlight是web应用程序。

可以在这里找到详细的比较:

CLR=Common Language Runtime,运行所有.NET代码的解释器。BCL=基类库,.NET framework中的类随CLR一起安装,可供所有.NET代码使用。