屬性
簡單屬性
前面用到的width/height都是簡單屬性,其賦值一定要放到雙引號裡
xaml解析器會根據屬性的型別執行隱式轉換
與c#的區別
solidbrush.color = colors.aliceblue;
c#中有的列舉型別可以用(|)運算子組合,在xaml中用(,)分隔
附加屬性
附加屬性可以用於多個控制項,但是在另外乙個類中定義的屬性,在wpf中常常用於布局
如dockpanel.dock="left" 也可以使用下面的形式
left
content屬性
有以下幾種寫法
hello wpf
hello wpf
content中不能有其他資訊,textblock的content例外,可以放置加粗和斜體標籤
hello ,
xaml
自定義控制項也可以新增content屬性
[contentproperty("text")]
public class book //.. }
hello wpf
型別轉換器
xaml中的字串通過型別轉換器變成clr物件
自定義型別轉換器
public class book
[typeconverter(typeof(moneyconverter))]
public class moneytype
public moneytype(double value)
public override string tostring()
public static moneytype parse(string value)
else}}
public class moneyconverter : typeconverter
public override bool canconvertto(itypedescriptorcontext context, type destinationtype)
public override object convertfrom(itypedescriptorcontext context, system.globalization.cultureinfo culture, object value)
public override object convertto(itypedescriptorcontext context, system.globalization.cultureinfo culture, object value, type destinationtype)
}canconvertfrom\canconvertto\convertfrom\convertto這四個方法需要重寫
標記擴充套件
xaml有以下情況無法支援
1.將屬性賦值為null
2.將屬性賦值給已經靜態變數
不同於型別轉換器的隱式轉換,標記擴充套件通過顯示的語法呼叫實現
在xaml中只要屬性被{}括起來,會被認為是乙個標記擴充套件。
將屬性賦值為null
將屬性賦值給已經靜態變數
如果想顯示的字串中有{} ,在字串前新增乙個{}
xaml不止可以應用於wpf
to be continue...
WPF學習之路(二) XAML
在wpf中引入了xaml語言,主要用於介面設計,業務邏輯則使用c 實現後台 將介面設計與業務邏輯分離 xaml是一種宣告式語言,類似xml html 示例 hello xaml 這是乙個普通的button hello xaml 在面板 dockpanel 視窗中有兩個button xaml有兩個重要...
WPF學習之二 XAML學習
wpf學習之二 xaml學習 一 什麼是xaml?二 xaml中的元素 xml中的每個通過尖括號括起來的標記都稱之為元素,xaml是基於xml產生的,因此對於這些標記,在xaml中也稱之為元素。但是xaml中的元素種類有很多,下面將分類闡述。下面先給出一段 然後針對這段 講述各種元素。click 1...
學習WPF 了解WPF中的XAML
xaml的簡單說明 xaml是用於例項化.net物件的標記語言,主要用於構建wpf的使用者介面 xaml中的每乙個元素都對映為.net類的乙個例項,例如對映為wpf的button物件 xaml可以在乙個元素中巢狀另乙個元素,例如grid元素可以巢狀button元素 了解xaml visualstud...