WPF与Silverlight的关键区别?

当 WPF和Silverlight越来越受到.NET开发人员重视的时候,两者间的界限也越来越 模糊 。回顾六月,Wintellect发布了鲜为人知但极其 重要的“ 微软WPF和Silverlight之异同白皮书 ”。我们建议GUI开发人员要通读全部69页,我们会列出主要的观点及其对相关业务范围开发人员 的影响。

依赖关系属性是两个平台的重要组成部分,使用PropertyMetadata可代替普通字段来保存属性。Silverlight仅提供了该类,而WPF却有若干子类型可用。

    * UIPropertyMetadata添加了一个标识符,用于决定“在使用了元数据实例的地方,是否应该禁播依赖关系属性的动画”
    * FrameworkPropertyMetadata添加一个标识符来指示影响管道的那些属性,包括控制管理、测量和呈现。它也可用于指示属性是否允许数 据绑定以及默认的类型。由于Silverlight不支持该类,因此所有的数据绑定在默认情况下都是单向的。

Silverlight不支持隧道事件。两个平台都支持Direct事件和Bubbling事件。

WPF支持多种类型的触发器。一个简单的触发器附加到依赖关系属性后,当触发器条件满足的时候便会自动修改样式。除了简单触发器以外,WPF也支持可响应路由事件或使用数据绑定的触发器。

Silverlight使用视觉状态管理器代替触发器。WPF当前并不提供该技术,但会在WPF 4.0中添加。

Silverlight仅支持若干标记扩展。除了通用的StaticResource、Binding和TemplateBinding扩展以外,WPF 还添加了DynamicResource、RelativeSource、x:Type、x:Static和x:Array。

有很多键盘和鼠标事件仅在WPF中可用。由于为数众多的关系,我们稍后会列出完整列表。

关于UIElement类和IInputElement接口。当某个控件被禁用的时候,WPF使用它们来禁用所有的子控件。Silverlight不提供这种功能,所以开发人员不得不手动遍历控件树。

在通信方面,Silverlight仅限于BasicHttpBinding和PollingDuplexHttpBinding。当然,WPF支持所有的绑定。

最后,打印功能在两者之间也完全不同。WPF可直接打印可视化树而Silverlight则依赖浏览器实现。


__________________
社会太坏,人太单纯,容易吃亏!
只看该作者    顶部
在线/呼叫justforregister
闭关修炼



精华贴数 2
个人空间 10
技术积分 74584 (7)
社区积分 28067 (51)
注册日期 2005-6-10
论坛徽章:22
现任管理团队成员参与WIN7挑战赛纪念ERP板块每日发贴之星生肖徽章2007版:鼠IT宝贝
#2
发表于 2009-11-18 11:11 
sap 居然用了silverlight, 真是瞎了眼哦


离线Sky-Tiger
天王盖地虎



来自 Vancouver
精华贴数 47
个人空间 0
技术积分 194973 (3)
社区积分 53358 (16)
注册日期 2004-2-19
论坛徽章:34
#3
发表于 2009-11-18 22:44 
GOOD!!!!


__________________
-----孰能浊以静之徐清  孰能安以动之徐生-----  

----------------
Scala 研究中...
Semantic web 研究中...
Cloud Computing 研究中...
MASHUP  研究中...
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值