原文地址:https://wpf.2000things.com/2010/07/30/18-silverlight-and-wpf-differences/
Silverlight原名为WPF/E(WPF/Everywhere),强调Silverlight跟WPF一样有相同的程序设计模型和使用许多相同的控件,但是它却是基于通过浏览器下载并期望运行在外部多种平台上的客户端运行库。
WPF和Silverlight的核心区别:
-WPF只在Window平台下运行
-WPF只有在已经安装有.NET Framework的客户机上运行
-Silverlight可以使用WPF的部分子集的控件
-Silvrlight使用.NET Framework和CLR的部分子库
WPF有但是Silverlight没有的功能:
-支持Flow document
-可以使用动态资源
-合并字典
-可以为一个新的FrameworkElement重新设置样式
-样式继承
-隐式声明TargetType
-为样式、控件模板和数据模板增加了触发器
-大量数据绑定
-命令路由
-以声明的方式联系控件和命令
-从UIElement进行继承
-自定义标记拓展
-运行时访问可视树和逻辑树
-控件:AccessText, BulletChrome, ButtonChrome, ContextMenu, Decorator, DocumentPageView, DocumentViewer, GridViewColumnHeader, GridViewRowPresenter, GroupBox, GroupItem, InkCanvas, Menu, MenuItem, PageContent, Ribbon, Separator, StatusBar, TickBar, ToolBar, Track, UniformGrid
Silverlight有的功能但WPF没有:
-深度放大
-控件:AutoCompleteBox, DataPager, DescriptionViewer, HyperlinkButton, MultiScaleImage, NumericUpDown, ValidationSummary