WPF与silverlight的关系

两个东西有什么关系 ? 哥们关系
两个有什么共同的地方 ?都用XAML

SilverLight是基于浏览器插件的,在浏览器中运行,服务器端不需要部署任何环境,其交互式及动画等比较炫的网页功能比较突出。WPF可以编写Web程序或者桌面应用程序,可以直接编译为独立运行的.Exe文件。
SilverLight作为WPF的一个轻量级的精简版本,曾经叫做WPF/E。一个很妙的比喻,说silverlight像flash一样,都是插件,适合做比较炫的网页效果。但是客户端要安装silverlight才能显示,就像安装flash插件才能显示flash一样。

技术迷论坛中与网友深层论讨了技术心德,现在总结与之分享!三点说明:“相似之处要说到来源、不同之处见其核心、网友一句,透彻心扉“。
  相似之处要说到来源!不同之处见其核心
  这得说起Silverlight的起初了,曾经Silverlight叫WPF/E是WPF跨平台的一个代号。WPF指的是.NET Framework3.0技术的一个新曾技术,在Vista应用中得到了支持,当然也就影响面大了!做为WPF/E为Windows Presentation Foundation/Everywhere,其中Everywhere指的是跨平台意思,使得在每个操作系统中可以运行WPF,所以使用的插件技术。当然,微软的架构师不会把这么不安全的WPF万能核心搬到浏览器插件中,然后就提取(或说重新开发)了一个精简的.NET Runtime Library到了WPF/E中来执行XAML文件!去除了文件操作、Windows API、3D控件、视频加速等等类库方法都在WPF/E中是没有的,  可叫其Silverlight Runtime Libray!在正式版WPF/E 1.0时,正式命名为了Silverlight(银光)。所以核心从本质上分开,说其关系倒不如说兄弟关系乎?
网友一句,透彻心扉!
  “WPF是Windows应用程序,而Silverlight是网页中的动画应用 -_-”.

微软宣布发布WPF5和Silverlight5,以及Expression Blend5,我们期待WPF和Silverlight更加出色的表现,更希望和HTML5的兼容性上有前瞻性发展。

WPF 为 Windows 客户端应用程序开发提供了更多编程增强功能。 markup and code-behind, an experience that ASP.NET developers should be familiar with.‘ data-guid="4826dd486a04fba413f922b0b72c4fcf">一个明显的增强功能就是使用标记和代码隐藏开发应用程序的功能,ASP.NET 开发人员应该熟悉此体验。 您通常使用可扩展应用程序标记语言 (XAML) 标记实现应用程序的外观,而使用托管编程语言(代码隐藏)实现其行为。 这种外观和行为的分离具有以下优点:

  • 降低了开发和维护成本,因为外观特定的标记并没有与行为特定的代码紧密耦合。

  • 开发效率更高,因为设计人员可以在开发人员实现应用程序行为的同时实现应用程序的外观。

  • Microsoft Expression Blend provides an experience that suits designers, while Visual Studio 2005 targets developers.‘ data-guid="2f78654a19ea2f723a4908aaade19b83">可以使用多种设计工具实现和共享 XAML 标记,以满足应用程序开发参与者的要求;Microsoft Expression Blend 提供了适合设计人员的体验,而 Visual Studio 2005 针对开发人员。

  • WPF Globalization and Localization Overview).‘ data-guid="e398bd11259c86a50ebdbd489b30b68b">WPF 应用程序的全球化和本地化得以大大简化(请参见 WPF 全球化和本地化概述)。

WPF Globalization and Localization Overview).‘ data-guid="e398bd11259c86a50ebdbd489b30b68b">内置的 WPF 控件:

布局系统通过基本 WPF 类公开给子控件。对于通用的布局,如网格、堆叠和停靠,WPF 包括了几个布局控件:

  • Canvas: Child controls provide their own layout.‘ data-guid="1197f7c8dc5b7ad246cf2ca38b75faa2">Canvas :子控件提供其自己的布局。

  • DockPanel: Child controls are aligned to the edges of the panel.‘ data-guid="e75cfa9823ad1a85fd5c128919d61bde">DockPanel :子控件与面板的边缘对齐。

  • Grid: Child controls are positioned by rows and columns.‘ data-guid="f3a90b2f933e951deaa51116de67c0a3">Grid :子控件按行和列放置。

  • StackPanel: Child controls are stacked either vertically or horizontally.‘ data-guid="32cdc769525d8f455b80070510b17c4f">StackPanel :子控件垂直或水平堆叠。

  • VirtualizingStackPanel: Child controls are virtualized and arranged on a single line that is either horizontally or vertically oriented.‘ data-guid="c7228ff93e5d0b7b121149dbc0e0b8c4">VirtualizingStackPanel :子控件被虚拟化,并沿水平或垂直方向排成一行。

  • WrapPanel: Child controls are positioned in left-to-right order and wrapped to the next line when there are more controls on the current line than space allows.‘ data-guid="9c0645a0805428c9b68c97a2fe986496">WrapPanel :子控件按从左到右的顺序放置,如果当前行中的控件数多于该空间所允许的控件数,则换至下一行。

WrapPanel: Child controls are positioned in left-to-right order and wrapped to the next line when there are more controls on the current line than space allows.‘ data-guid="9c0645a0805428c9b68c97a2fe986496">http://archive.msdn.microsoft.com/wpfsamples MSDN学习示例

Microsoft Silverlight 是一个跨浏览器、跨平台的 .NET Framework 实现,用于生成 Web、桌面和 Windows Phone 的媒体体验和丰富交互式应用程序。

对于互联网用户来说,Silverlight是一个安装简单的浏览器插件程序。用户只要安装了这个插件程序,就可以在WindowsMacintosh上多种浏览器中运行相应版本的Silverlight应用程序,享受视频分享、在线游戏、广告动画、交互丰富的网络服务等等。
对于开发设计人员而言,Silverlight是一种融合了微软的多种技术的Web呈现技术。它提供了一套开发框架,并通过使用基于向量的图像图层技术,支持任何尺寸图像的无缝整合,对基于asp .net、AJAX在内的Web开发环境实现了无缝连接。Silverlight使开发设计人员能够更好的协作,有效地创造出能在Windows和Macintosh上多种浏览器中运行的内容丰富、界面绚丽的Web应用程序——Silverlight应用程序
简而言之,Silverlight是一个跨浏览器、跨平台的插件,为网络带来下一代基于.NET媒体体验,和丰富的交互式应用程序。对运行在Macintosh和Windows上主流浏览器,Silverlight提供了统一而丰富的用户体验,通过Silverlight这个小小的浏览器插件,视频、交互性内容,以及其他应用能完好的融合在一起。
Microsoft Expression Blend附带了许多 Microsoft Silverlight控件,使用这些控件可以创建出色的用户体验。还也可以从受信任的来源下载控件,并通过添加引用来导入自定义控件
如果发现某个控件在功能上适合需求,但外观却不符合要求,并且该控件支持模板,则可以修改该控件模板来更改其外观。
如果这样子还不能满足需求,Silverlight还支持自定义控件或是使用第三方控件
常用的Silverlight控件有:布局控件(Grid控件、StackPanel控件等),Button控件,Checkbox控件,ListBox控件,RadioButton控件,Slider 控件,ScrollBar 控件,ScrollViewer 控件,ComboBox 控件,PasswordBox 控件,TextBox 控件等。
支持Silverlight的第三方控件有:ComponetOne, Spread WPF-Silverlight,ActiveReports等。
 

来源于:http://blog.163.com/zhengjiu_520/blog/static/35598306201112233837970/

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。