WPF与silverlight的关系

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

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

技术迷论坛中与网友深层论讨了技术心德,如今总结与之分享!三点说明:“类似之处要说到来源、不一样之处见其核心、网友一句,透彻心扉“。
  类似之处要说到来源!不一样之处见其核心
  这得提及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的兼容性上有前瞻性发展。canvas

WPF 为 Windows 客户端应用程序开发提供了更多编程加强功能。 一个明显的加强功能就是使用标记和代码隐藏开发应用程序的功能,ASP.NET 开发人员应该熟悉此体验。 您一般使用可扩展应用程序标记语言 (XAML) 标记实现应用程序的外观,而使用托管编程语言(代码隐藏)实现其行为。 这种外观和行为的分离具备如下优势:windows

  • 下降了开发和维护成本,由于外观特定的标记并无与行为特定的代码紧密耦合。 浏览器

  • 开发效率更高,由于设计人员能够在开发人员实现应用程序行为的同时实现应用程序的外观。 安全

  • 可使用多种设计工具实现和共享 XAML 标记,以知足应用程序开发参与者的要求;Microsoft Expression Blend 提供了适合设计人员的体验,而 Visual Studio 2005 针对开发人员。 服务器

  • WPF 应用程序的全球化和本地化得以大大简化(请参见 WPF 全球化和本地化概述)。 网络

内置的 WPF 控件:架构

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

  • Canvas :子控件提供其本身的布局。

  • DockPanel :子控件与面板的边缘对齐。

  • Grid :子控件按行和列放置。

  • StackPanel :子控件垂直或水平堆叠。

  • VirtualizingStackPanel :子控件被虚拟化,并沿水平或垂直方向排成一行。

  • WrapPanel :子控件按从左到右的顺序放置,若是当前行中的控件数多于该空间所容许的控件数,则换至下一行。

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/