隨WinCE6.0 R3新發布的UI框架——Silverlight for Embedded常見問題解答

難得寫篇和工作有關的東西,隨着WinCE6.0 R3(請看馬寧老師爲我們第一時間帶來的Windows Embedded 6.0 R3開發初體驗)的發佈,咱這一直想說不敢說的嵌入式UI框架終於可以隨便亂講了。作爲一個早期用戶,此處我來貢獻點基礎知識,發個FAQ來讓大家有個印象:

Q1:Silverlight for Embedded是什麼?

A1:Silverlight for Embedded是一個在WinCE6.0 R3以上版本上可用的應用程序UI框架,它提供了一種邏輯和UI相分離的編程模型,可以大大減輕程序員的UI開發工作量,同時跟Silverlight/WPF類似的Xaml語法也讓程序員/視覺設計師在不同的領域之間有更多的知識交集,降低了學習成本。與Win32的GDI相比,Silverlight for Embedded更容易製作高質量的應用程序界面,也更容易修改和支持多種皮膚。

Q2:Silverlight for Embedded跟Silverlight有什麼關係?

A2:Silverlight for Embedded跟Silverlight使用了同一個渲染核心,你可以認爲Silverlight是用C#爲它編寫的一個shell,而Silverlight for Embedded則是用C++爲它編寫的另一個shell。Silverlight的目標是瀏覽器,而Silverlight for Embedded的目標是嵌入式應用程序(不久也許WinCE瀏覽器也會支持Silverlight插件)。

Q3:Silverlight for Embedded的文檔在哪裏可以找到?

A3:很遺憾Silverlight for Embedded目前文檔還沒有完成,但是Silverlight for Embedded跟Silverlight有非常相似的架構,你可以把MSDN上的Silverlight文檔當作參考,所有的不同僅僅是C++和C#的語言差異(事實上我們在過去一年的開發中一直是這樣做的),你也可以從微軟的技術支持部門或JDP項目獲得技術信息。

Q4:Silverlight for Embedded需要用什麼環境來開發呢?

A4:不必說首先我們需要一整套WinCE6.0 R3的運行環境,注意Silverlight for Embedded只能使用非託管C++來開發,我們需要對自己的項目做一些設置來引用Silverlight for Embedded(這個比較複雜,細節以後單獨發blog吧),此外Expression Blend可以幫助我們產生描述UI用的Xaml.

Q5:WinCE6.0 R3中有Silverlight for Embedded的應用嗎?

A5:請看我們新版的Browser,此外隨着WinCE6.0 R3還發布了一些小的示例程序。

Q6:相比Silverlight ,Silverlight for Embedded有哪些重大變動?

A6:除了語言從C#變成了C++,還有兩點比較大的改動:

1.無法繼承除UserControl的任何控件,即微軟之外的程序員無法編寫原生Control(Silverlight是可以的),但仍然可以用UserControl來組織你的界面

2.直接寫在Xaml中的事件回調函數將會被忽略,需要在C++代碼中查找元素名並且用C++代碼綁定事件

 

原文:http://www.cnblogs.com/winter-cn/archive/2009/11/09/1599422.html

發佈了37 篇原創文章 · 獲贊 0 · 訪問量 21萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章