天天看點

20120903 XAML

  XML 元素,可以分成有内容的非空元素和沒有内容的空元素,元素内容可以是文本串若幹子元素。非空元素的一般格式為:

                     <元素名[ 屬性名="屬性值" 屬性名="屬性值" „„]> 元素内容  </元素名>

  元素的一般格式為:

                     <元素名[ 屬性名="屬性值" 屬性名="屬性值" „„] />

  XML文檔中的注釋格式為:

                     <!-- 注釋内容(不含--的任意字元串) –>

  事件的處理程式被定義在<x:Code>子元素的字元資料節 CDATA 中,CDATA中的内容不會被 XML解析器解析(但可被 XAML了解)。CDATA 的定義格式為:

                     <![CDATA[  資料内容(不含]]>的任意字元串) ]]>

   這種直接在XAML檔案中嵌入處理代碼的方式,并不是我們所推薦的。一般在 XAML文檔中隻有界面設計的内容,而真正的處理代碼應該放在 WPF 程式的一個相關的部分 C# 類中。

 靜态标記擴充x:Static 的格式為:屬性="{x:Static [字首:]類型名.靜态成員名}"

 類型标記擴充x:Type 的格式為:屬性="{x:Type [字首:]類型名值}"

  x:StaticExtension、x:TypeExtension、x:ArrayExtension 和 x:NullExtension分别為标記擴

展類類型x:Static、x:Type、x:Array和x:Null的完整限定名。

在application中,設定主視窗的XMAL應用為:

<Application StartupUri = "MainXaml.xaml" > </Application >      

而自定義.net類的使用則使用命名空間,定義XML的别名:

代碼自定義類person:

namespace XamlSpace
{
    public class Person { ... }
}      

XAML UI定義中則命名别名:

<Window x:Xlass"XamlSpace.mainWindow"
     xmlns:local = " clr-namespace:XamlSpace" >
  <ListBox>
      <local:Person Firstname = "..." />
  </ListBox>
</Window>      

也可以在AssemblyInfo.cs中定義.Net名稱空間的别名,進而再進行調用:

[assembly :XmlnsDefinition( "http://www.wrox.com/shchen/2012", "XmalSpace" ) ]      
<Window x:Xlass"XamlSpace.mainWindow"
     xmlns:local = "http://www.wrox.com/shchen/2012" >
  <ListBox>
      <local:Person Firstname = "..." />
  </ListBox>
</Window>      

轉載于:https://www.cnblogs.com/Caius/archive/2012/09/03/2669259.html

c# ui