我更新一些現有的WPF代碼和我的應用程序有很多的TextBlocks的這樣定義:WPF文本塊中的XAML
<TextBlock x:Name="textBlockPropertyA"><Run Text="{Binding PropertyA}"/></TextBlock>
在這種情況下,「PropertyA」是我的類對象的屬性這樣定義的:
public class MyBusinessObject : INotifyPropertyChanged
{
private void OnPropertyChanged(PropertyChangedEventArgs e)
{
if (PropertyChanged != null)
{
PropertyChanged(this, e);
}
}
private string _propertyA;
public string PropertyA
{
get { return _propertyA; }
set
{
if (_propertyA == value)
{
return;
}
_propertyA = value;
OnPropertyChanged(new PropertyChangedEventArgs("PropertyA"));
}
}
// my business object also contains another object like this
public SomeOtherObject ObjectA = new SomeOtherObject();
public MyBusinessObject()
{
// constructor
}
}
現在我有一個TextBlock,我需要綁定到其中,你可以看到對象A的屬性之一,是MyBusinessObject的對象。在代碼中,我稱此爲:
MyBusinessObject.ObjectA.PropertyNameHere
我不像其他綁定,「PropertyNameHere」不是MyBusinessObject的直接屬性,而是在對象A的屬性。我不確定如何在XAML文本塊綁定中引用它。誰能告訴我我該怎麼做?謝謝! (即作爲一個屬性,有一個公共的getter/setter方法,並調用OnPropertyChanged)
老兄,請在發佈答案之前閱讀問題。 – Sheridan
是的,我知道,在propery中,他沒有把Property changed事件稱爲...所以包含了第一個,並添加了xaml –