這一節中“屬性元素”的概念可以用匪夷所思形容。
1。WPF用標簽元素實現對象建模,有兩種:Control和Container,都用來裝載內容和行為,前者如 Button,後者如Window。
你可以這樣寫:
<Window >
<Button Width="100" Height="100">
<Image Source="tom.png" />
</Button>
</Window>
也可以這樣:
<Window >
<Button Width="100" Height="100">
<TextBox Width="75">edit me</TextBox>
</Button>
</Window>
就是說,將原來Button的Image屬性和TextBox屬性當作對象提取出來。這是因為Button起源於一個類 :ContentControl ,該類知道如何生成其裝載的所有控件。
2。其實完整的寫法是這樣的:
<Button Width="100" Height="100">
<Button.Content>
<Image Source="tom.png" />
</Button.Content>
</Button>
但是,<Button.Content>標簽內不能有兩個控件,會顯示語法錯誤,只能是一個屬性元素—— 這時候要用Panel。
Window控件有和Button同樣的用法,見下面章節。