如何在XAML中将TextBlock的DataContext设置为类

本文关键字:DataContext 设置 TextBlock XAML 中将 | 更新日期: 2023-09-27 17:59:26

我想在XAML中设置TextBlockdatacontext

Resharper建议使用

<TextBlock Text="{Binding name}" Margin="50" d:DataContext="{d:DesignData Class1}" />

但是,当我出于某种原因运行应用程序时,TextBlock将我在View代码后面指定的类作为其数据上下文,并显示错误的文本

后面的视图代码

    public partial class ViewA : UserControl {
    public ViewA() {
        InitializeComponent();
        VmB vm = new VmB();
        DataContext = vm;
    }
}

所以我想显示Class1 name属性,而不是VmB name属性

如何在XAML中将TextBlock的DataContext设置为类

d:DataContext仅为可视化设计器设置DataContext。如果要绑定到类,则需要将实际DataContext设置为Class1的实例。从哪里获得该实例以及如何设置它取决于您自己。

是的,您只需要从您的xaml中删除设计部分,所以类似这样的东西。。。

<TextBlock Text="{Binding name}" Margin="50" DataContext="{Binding Class1}" />