C#中XAML入门分析

XAML 标记语言

一 理解XAML:

  • 1 它是基于XML,严格区分大小写,在WPF中主要用于UI
  • 2 XAML中的属性和.NET CLR中的属性相对饮

二 XAML的种类

**在.net 4.5中**
  • 1 用于wpf的xaml
  • 2 用于xps的xaml
  • 3 用于silverlight的xamll
  • 4 用于wf的xaml

三 XAML基础

  • 1 每个xaml文档都映射到一个.net类的实例
  • 2 xaml可以嵌套元素
  • 3 可以通过设置元素来为每个类的属性赋值
  • 4 每个xaml文件都只能有一个根元素 //window
  • 5 每个xaml文件都必须要有最基本的命名空间

四 命名空间

//xmlns=“http://schemas.microsoft.com/winfx/2006/xaml/presentation”
//xmlns:x=“http://schemas.microsoft.com/winfx/2006/xaml”

五 代码后置文件

每个构造函数中的InitializeComponent()是用于XAML转换成.NET语言的引用

六 标记扩展特性

标记扩展特性可以使用在内嵌元素或者是xaml属性语法中,对于属性语法,通常是用大括号包围其语法.

七 附加属性

例如文本框的特有字体属性 Grid的宽高属性等等

八 特定字符和空白

在xaml中 &,<,>需要特定处理

<   =   <
>   =   >
&   =   &
" " =   "

空格内的文字会收缩 ,不收缩需要在后面加xml:space=“preserve”

九 使用其他命名空间的类型

//添加:
xmlns:Prefix="clr-namespace:Namespace;assembly=AssemblyName"
通常将这个命名空间放在根元素中,最好是wpf和xaml命名空间后面

开发人员需要为Prefix,Namespace,AssemblyName赋值

  1. Prefix用于指定希望在XAML文档中使用的命名空间前缀,类似于x:前缀 ,可指定任一字符串
  2. Namespace 是完整的.NET命名空间的名字
  3. AssemblyName 这个类型是被定义的程序集名称,不用指定.dll扩展名,这个程序集必须被引用

你可能感兴趣的:(WPF,.NET)