如何在 XAML 设计器中绑定数据

在 XAML 设计器中,可使用美工板和“属性”窗口设置数据绑定属性。 本主题中的示例展示如何将数据绑定到控件。 具体而言,该过程展示如何创建一个简单的购物车类,该类具有一个名为 ItemCount 的 DependencyProperty,然后将 ItemCount 属性绑定到 TextBlock 控件的 Text 属性。

若要创建类用作数据源,请执行以下操作

  1. 用“空白应用程序”模板创建一个 C# 或 Visual Basic 项目。

  2. 打开 MainPage.xaml.cs(或 MainPage.xaml.vb),然后添加以下代码。 在 C# 中,将这段代码添加到 projectName 命名空间中(在文件中的最后一个右括号之前)。 在 Visual Basic 中,添加新类即可。

    public class ShoppingCart : DependencyObject
    {
        public int ItemCount
        {
            get { return (int)GetValue(ItemCountProperty); }
            set { SetValue(ItemCountProperty, value); }
        }
    
        public static readonly DependencyProperty ItemCountProperty =
             DependencyProperty.Register("ItemCount", typeof(int),
             typeof(ShoppingCart), new PropertyMetadata(0));
    }
    
    Public Class ShoppingCart
        Inherits DependencyObject
    
        Public Shared ReadOnly ItemCountProperty As DependencyProperty = DependencyProperty.Register(
            "ItemCount", GetType(Integer), GetType(ShoppingCart), New PropertyMetadata(0))
        Public Property ItemCount As Integer
            Get
                ItemCount = CType(GetValue(ItemCountProperty), Integer)
            End Get
            Set(value As Integer)
                SetValue(ItemCountProperty, value)
            End Set
        End Property
    End Class
    

    这段代码使用 PropertyMetadata 对象,将默认项计数的值设置为 0。

    提示

    在 Visual Studio 中,可通过在 ShoppingCart 类中键入 propdp 然后按 TAB 键,为依赖属性添加存根代码。

  3. 单击**“生成”>“生成解决方案”**。

若要将 ItemCount 属性绑定到 TextBlock 控件,请执行以下操作

  1. 右击 MainPage.xaml,然后单击**“视图设计器”**。

  2. 在“文档大纲”窗口中,选择根网格面板,它在窗口中显示为**“[Grid]”**。

  3. 选择 Grid 后,单击“属性”窗口中**“DataContext”属性旁的“新建”**按钮。

  4. 在**“选择对象”对话框中,确保清除“显示所有程序集”,并在 projectName 命名空间下选择“ShoppingCart”,然后单击“确定”**。

    下图显示选择了**“ShoppingCart”“选择对象”**对话框。

    “选择对象”对话框

  5. 在**“工具箱”**中,双击某个 TextBlock 控件,将其添加到美工板中。

  6. 选择该 TextBlock 控件后,单击“属性”窗口中“公共”下**“文本”**属性右侧的属性标记。 (属性标记看上去像是一个小方框。)

  7. 在随后出现的菜单中单击**“创建数据绑定”**。

  8. 以**“数据上下文”作为绑定类型(这是“绑定类型”列表中的默认值),选择“路径”框中 的“ItemCount”属性,然后单击“确定”**。

    下图显示选择了**“ItemCount”属性的“创建数据绑定”**对话框。

    “创建数据绑定”对话框

  9. 按 F5 启动应用程序。

    TextBlock 控件应显示默认值 0 作为文本。

请参见

参考

“添加值转换器”对话框

概念

使用 XAML 设计器创建 UI