假设我有一堂课:
class Foo
{
public string Bar
{
get { ... }
}
public string this[int index]
{
get { ... }
}
}
我可以使用“ {Binding Path = Bar}”和“ {Binding Path = [x]}”绑定到这两个属性。精细。
现在假设我要实现INotifyPropertyChanged:
class Foo : INotifyPropertyChanged
{
public string Bar
{
get { ... }
set
{
...
if( PropertyChanged != null )
{
PropertyChanged( this, new PropertyChangedEventArgs( "Bar" ) );
}
}
}
public string this[int index]
{
get { ... }
set
{
...
if( PropertyChanged != null )
{
PropertyChanged( this, new PropertyChangedEventArgs( "????" ) );
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
}
标为??????的部分内容(我尝试过string.Format(“ [{{0}]”,index),它不起作用)。这是WPF中的错误吗?是否存在替代语法?或者仅仅是INotifyPropertyChanged不如常规绑定那么强大?
最佳答案
感谢Cameron的建议,我找到了正确的语法,即:
Item[]
它将更新绑定到该索引属性的所有内容(所有索引值)。
关于wpf - 如何使用INotifyPropertyChanged更新数组绑定(bind)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/90971/