代码之家  ›  专栏  ›  技术社区  ›  Gern Blanston

WPF文本块绑定问题

  •  1
  • Gern Blanston  · 技术社区  · 14 年前

    我正在努力让自己的头脑围绕着整个MVVM的事情和绑定。我有一个ViewModel类,它的属性是另一个类。我要将该类的(字符串)属性绑定到textBlock的文本。

    我将viewModel设置为window\page的数据上下文。然后这样做:

    <TextBlock Text="{Binding ElementName=myAddressClass, Path=StreetName}" />
    

    但这不起作用。文本为空。

    我可以直接公开街道名称,如下所示:

    <TextBlock Text="{Binding  Path=StreetName}" />
    

    在第一个例子中,我是否做错了什么?看起来很简单…我只是混淆了元素名是什么,还是应该设置为什么?

    谢谢

    2 回复  |  直到 14 年前
        1
  •  1
  •   Eric Mickelsen    14 年前

    我想你可能很困惑。如果要绑定到myaddress.streetname,只需执行以下操作: Text="{Binding MyAddress.StreetName}" 确保MyAddress是您的DataContext的属性。elementname用于绑定到其他控件。

        2
  •  1
  •   hemp    14 年前

    elementname用于引用逻辑树中的xaml元素。由于您试图绑定到的不是元素,因此elementname不是正确的方法。在这种情况下,点路径表示法是最简单的方法:

    {Binding Path=myAddressClass.StreetName}