XAML 控件全解析:从基础到高级应用
1. 控件概述
XAML 定义了各种具有内在交互行为的控件。所有 XAML 框架都定义了Control类,从该类派生的类型通常有两个共同特点:
- 用户可以直接与之交互,无需额外编写代码来定义交互行为。例如,将CheckBox元素添加到 UI 中,它会自动表现得像普通的复选框。
- 具有可定制的外观,在不丢失其底层行为的前提下,可以为控件定义全新的外观。
不过,XAML 框架定义的包含“controls”字样的命名空间中,有些元素并非派生自Control,也不具备上述特点。比如 Windows Runtime 的Windows.UI.Xaml.Controls命名空间,对应其他框架中的System.Windows.Controls,其中除了控件,还包含Grid和StackPanel等面板类型,它们本质上不具备交互性,甚至可能不可见。
2. 内容控件
内容控件能够容纳任意元素,并围绕这些内容提供特定行为。它们定义了Content属性,若将元素置于内容控件内,该元素会自动成为Content属性的值,且这些控件均派生自ContentControl基类。
- 按钮示例: