WPF和Silverlight到底有什麼不同?

由於名稱的關係, WPF與WPF/E一直被認為是類似的東西.

其實兩者除了呈現UI的部分使用的是共通語言 XAML 之外,

兩者在本質上有很大的不同.

甚至,XAML對WPF與Silverlight有不同的意義,也不能算是兩者間"共通的語言"




XAML對WPF來說,是一種把.NET程式語言改用XML來描述的方式.

換句話說,XAML用在WPF上,像是另外一種程式語言.與C#, VB , IronPython相似.

所以XAML能做的, C# , VB一樣都可以做到. 但是反過來, C# , VB 能做的,

XAML不一定能做到,因為XAML是為了配合開發工具,特別設計出來的一種語言,

本身有他的局限性,所以還是得配合正規的程式語言,才能完成一個真正有用的程式.

但是以目前XAML所具備的能力,不靠C# , VB而做到平常簡單Flash可以做到的,應該是沒啥問題.




因此, Application = Code + Markup的作者Petzold才會把這本書的結構寫成先用以C#來寫WPF程式,後半部才介紹XAML. 避免大家誤解 WPF = XAML.

XAML還可以用在WF上,所以並不局限於WPF. 如果用了XAML,以為這就是WPF的全部,就大錯特錯囉!




然而,XAML對Silverlight來說,本質比較貼近SVG.

XAML 用來描述構成畫面的結構樹,然後配合Javascript去操作這顆表示UI的樹,以達到互動的效果. 所以對Silverlight來說, XAML像是用來擴充HTML/CSS原本不足的一組Tag. 就像Firefox之中,一樣可以用Javascript去操作SVG所描述的畫面,藉以達成多媒體效果.

http://blogs.msdn.com/senwang/archive/2007/04/17/wpf-silverlight.aspx
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值