📜  Xamarin.Forms的XAML

📅  最后修改于: 2021-01-11 16:07:54             🧑  作者: Mango

Xamarin.Forms的XAML

Xaml或可扩展标记语言是一种声明性语言,用于在Xamarin.Forms中创建用户界面。

Xaml是基于XML的简单声明性标记语言。 Xaml是区分大小写的强类型标记语言,它将表示与业务逻辑分开。 XAML元素是CLR对象的XML表示形式。 Xaml用于在层次关系中创建,初始化和设置对象的属性。 Xaml主要用于设计WPF,Silverlight,Windows Phone和Xamarin Forms中的UI。

XAML工作

Xaml文件将转换为BAML(二进制应用程序标记语言),它将作为一种资源嵌入到最终的DLL / exe中。

XAML的优点

  • XAML基于XML语法。
  • XAML代码小而容易。
  • 与代码相比,XAML代码易于编写且易于理解。
  • 与代码相比,使用XAML设计UI更容易。
  • XAML在UI(XAML)和UI逻辑(C#)之间提供了清晰的分隔。
  • XAML将设计人员和开发人员的角色分开。

Xaml的好处

首先,在XAML中布置用户界面的最大好处是容易。当使用XAML对页面中的可视树控件进行布局时,可以快速制作应用程序并变得非常明显。

XAML中的代码更具可读性。例如:当控件数据绑定到视图模型中的属性时,XAML语法比C#语法干净得多。

Xamarin数据绑定:

C#数据绑定:

Label firstNameLabel = new Label();
firstNameLabel.SetBinding(Label.Text, "FirstName");

XAML版本变得更具可读性。

最后,Xamarin在Xamarin Studio和Visual Studio中都引入了新版本的XAML预览器。该工具允许开发人员在IDE中查看用户界面。

XAML页面的结构




    
        
        


在这里, XAML解析器打开的元素知道它遇到了内容页面,因此应该实例化。其他UI控件放置在标记内,XAML解析器在其中实例化以构建UI。

XAML解析器负责XAML文件的工作,查找需要实例化的元素,设置其属性,将适当的控件放置在总体Layout中的适当位置,执行数据绑定等。一项令人印象深刻的技术。

物产

在XAML中,属性具有两种风格。第一个是属性属性。这些是最简单有效的理解。在UI组件的标签内声明的属性属性。属性名称将始终与控件的属性名称相同,但是属性的值将始终为字符串。

我们总是指定一个字符串,因为XAML接受XML规则。

XAML的第二种属性是Element Property 。当属性的值太复杂而无法在简单的字符串表达时,将使用Element Property。

元素属性倾向于隐藏在视线中。创建空白的ContentPage后 element是一个元素属性。此属性用于保存Page的其余内容,该内容太复杂而无法在字符串表达。

XAML和代码之间的区别

XAML比代码更易于维护和修改。 Xaml易于解析,可以通过软件工具(而非代码)进行编辑。 XAML有时比等效的C#代码更简洁。

  
        
        

XAML没有循环,没有流控制,没有代数计算语法,也没有事件处理程序。在这种情况下,C#代码可以帮助我们定义所有这些内容。

档案结构

Xaml文件由两个文件组成。 UI和背后的代码。如果要创建注册表单,则将具有以下内容:

  • Login.Xaml-XAML用户界面
  • UI的Login.Xaml.CS-代码隐藏

XAML UI结构

XAML视图由Page组成,可以使用不同的Layouts,并且如果没有Layout,则使用多个视图来创建UI。