WPF和Silverlight到底有什麼不同?

本文探讨了XAML在WPF与Silverlight中的应用方式及其本质区别。对于WPF而言,XAML是一种将.NET语言转换为XML描述的方法,而对Silverlight来说,XAML更接近于SVG,用于描述UI结构并配合JavaScript实现交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由於名稱的關係, 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
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值