2010-05-19 51 views
1

我試圖讓我的頭繞着整個MVVM的東西和綁定。我有一個ViewModel類,它有一個屬性是另一個類。我想將該類的(字符串)屬性綁定到文本塊的文本。WPF文本塊綁定問題

我將ViewModel設置爲我的窗口\頁面的數據上下文。然後執行此操作:

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

但這不起作用。文本是空的。

我可以直接暴露StreetName如下這一點也適用:

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

所以我做錯了什麼在第一個例子。這似乎很簡單...我只是混淆了一個元素名是或應該設置爲什麼?

謝謝

回答

1

我想你可能會感到困惑。如果要綁定到MyAddress.StreetName,請執行以下操作:Text="{Binding MyAddress.StreetName}"確保MyAddress是您的DataContext的屬性。 ElementName用於綁定到其他控件。

1

ElementName用於引用邏輯樹中的XAML元素。因爲你試圖綁定的元素不是元素,ElementName不是正確的方法。虛線路徑符號是此情況下最簡單的方法:

{Binding Path=myAddressClass.StreetName}