c# xaml语言教程,Xamarin XAML语言教程XAML文件结构与解析XAML
Xamarin XAML語言教程XAML文件結構與解析XAML
XAML文件結構
在上文中,我們創建XAML文件后,會看到類似圖1.16所示的結構
圖1.16??結構
其中,.xaml文件和.xaml.cs文件就是XAML文件的結構。以下就是對這兩個文件的介紹。
.xaml文件中包含的就是XAML代碼,實際上就是XML語法。官方的說法:它是一個聲明對象的語言,為我們創建對象提供便捷的一種方式。與HTML類似,特點是用來描述用戶接口?(UI)內容。
通常我們把與.xaml文件關聯的.xaml.cs文件叫作代碼隱藏文件。如果開發者引用.xaml中的任何一個事件(如Button的Click?事件),,將在這個文件中編寫對應的事件處理代碼。
解析XAML
在上文中我們創建XAML文件后,會看到類似以下3種代碼。
(1)第一種是使用Visual Studio創建項目后創建XAML文件顯示的XAML代碼:
xmlns:x=""
x:Class="Hello.XAMLPage">
(2)第二種是使用Xamarin Studio創建項目后創建XAML文件顯示的XAML代碼:
xmlns:x=""
x:Class="Hello.MyPage">
(3)第三種是在創建項目的同時創建XAML文件顯示的代碼:
xmlns:x=""
xmlns:local="clr-namespace:Hello"
x:Class="Hello.MainPage">
VerticalOptions="Center"
HorizontalOptions="Center" />
這3種文件代碼的公共部分為如下:
xmlns:x=""
x:Class="Hello.MainPage">
以下就是對XAML公共默認的部分進行說明。
第一行是對XML簡單的說明,其中包含了XML版本號以及編碼格式。
第二行代碼至最后一行代碼的功能是構建界面所需要的內容。其中,第二行和第三行使用兩個XML命名空間(xmlns)聲明引用了URL。開發者不需要知道這些URL指向的具體內容。他們只是Xamarin和Microsoft擁有的URL,它們基本上充當版本標識符。第一個XML命名空間聲明意味著在XAML文件中定義了沒有前綴的標簽,它引用Xamarin.Forms中的類,如ContentPage。第二個命名空間聲明定義了x的前綴,它用于XAML本身固有的幾個元素和屬性,(理論上)由XAML的所有實現支持。
注意:這些元素和屬性根據嵌入在URL中的年份略有不同。Xamarin.Forms支持2009 XAML規范,但不是所有的。
第四行代碼。在聲明x前綴之后,該前綴立即用于名為Class的屬性,這是因為使用這個x前綴在XAML文件中非常普遍。例如,Class簡稱為x:Class。x:Class指定.NET類名稱。
注意:x:Class屬性只能出現在XAML文件的根元素中,以定義派生的C#類。
對于x:Class指定類的定義,開發者可以在.xaml.cs文件中看到,代碼類似于以下代碼:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;
namespace Hello
{
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
}
}
}
注意:x:Class的值所指示的類型在聲明的時候必須使用partial關鍵字。這樣由XAML解析成的類和.xaml.cs文件里定義的部分就合二為一了。正是由于這種partial機制,我們可以把類的邏輯代碼留在.xaml.cs文件中,并用C#語言來實現,而把那些于聲明及布局UI元素相關的代碼分離出來,實現UI以邏輯分離。
總結
以上是生活随笔為你收集整理的c# xaml语言教程,Xamarin XAML语言教程XAML文件结构与解析XAML的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos 关闭防火墙_CentOS7
- 下一篇: c# 获取word表格中的内容_Java