Windows Phone 8初級教程(四) XAML簡介

來源:互聯網
上載者:User

原文地址:

http://channel9.msdn.com/Series/Windows-Phone-8-Development-for-Absolute-Beginners/Part-4-Introduction-to-XAML

系列地址:http://channel9.msdn.com/Series/Windows-Phone-8-Development-for-Absolute-Beginners

原始碼: http://aka.ms/absbeginnerdevwp8 PDF版本: http://aka.ms/absbeginnerdevwp8pdf

在本課中,我將討論在第一課中編寫的SoudBoard應用程式的XAML文法。希望您注意到了我們編寫的XAML是如何影響手機預覽窗格中我們見到的內容。通過查看XAML來理解絕對基本的XAML是相對簡單的,但是我想指出一些並非一眼就能看出的特性和功能。

概要地講本課的計劃是:

我們將通過與C#的比較來討論XAML的目的和性質

我們將討論XAML的特殊特性,語言的一些隱藏功能,這些功能並非看一眼就顯而易見。

我的目標是:當本課結束時您將具備足夠的理解我們在本系列其餘部分編寫的XAML的知識,並且在我試圖解釋前就能夠基本猜出它的作用。

1. XAML是什麼?

在上一課我提到XAML的外觀與HTML類似。這並非偶然。XAML其實就是XML(可延伸標記語言 (XML)the eXtensible Markup Language)。我待會兒會解釋它們的關係,但是概要地講,XML和HTML非常相似,它們具有共同的祖先。HTML用於構建web頁面文檔,而XML則更通用。此處“通用”的意思是您可以針對設想的任意用途來使用它,並且您可以定義元素和特性(attributes)的名稱來滿足您的需要。過去開發人員利用XML來儲存應用設定,在兩個不同的系統之間傳輸資料。為了使用XML,您需要定義架構(schema),它對元素和元素特性的名稱進行聲明。架構類似於一個合約(contract)。每個人,不管他是XML的生產者還是XML的使用者都遵守合約的規定以在相互間進行通訊。因此架構是XML的重要組成部分。請記住上述分析,待會兒我們還會對他進行討論。

XAML是XML的一種特殊用法。很顯然,我們已經看到XAML與定義手機的使用者介面有關。所以在這點上感覺它非常像HTML。但是有一個很大的區別,XAML實際上用於建立類的執行個體和設定屬性(properties)的值。例如,在前面的課程中我們在XAML中定義了一個按鈕:

上述代碼大致等同於以下的C#代碼:

我已將上述C#代碼添加到MainPage類的建構函式中。我待會兒會討論MainPage.xaml和MainPage.xaml.cs之間的關係,但是我們已經看到如何在MainPage.xaml.cs中通過編寫程式方式的C#代碼來定義行為。這裡我僅僅編寫了在MainPage類的新執行個體被建立時執行的代碼(通過在類的建構函式中編寫代碼來實現)。

現在我有了兩個按鈕,一個以聲明方式在XAML中定義、含有“內容Hello World”並且在單擊按鈕時會發出嘎嘎的叫聲,另一個是新建立的含有內容“Quack” 的按鈕。當我們運行應用:

查看本欄目更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/extra/

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.