4 boyutunda bir bool dizim var ve her hücreyi farklı bir denetime bağlamak istiyorum. Bu bool dizisi 4 durumu temsil eder (false = failure, true = success).INolifyPropertyColged işlevler bir bool []?
class foo : INotifyPropertyChanged {
...
private bool[] _Statuses;
public bool[] Statuses
{
get {return Statuses;}
set {
Statuses = value;
OnPropertyChanged("Statuses");
}
}
XAML, her biri dizinin bir hücreye bağlanmış, 4 denetimleri vardır: Bu BOOL dizisi bir sınıf ile bir emlak olan
... Text="{Binding Path=Statuses[0]}" ...
... Text="{Binding Path=Statuses[1]}" ...
... Text="{Binding Path=Statuses[2]}" ...
... Text="{Binding Path=Statuses[3]}" ...
sorun olaydır bildirmek olmasıdır
Statuses = new bool[4];
ama sonraki satır bile yükseltir vermez: Ben dizinin kendisi değiştirebilir ve ben dizinin içinde bir değeri değiştirdiğinizde kaldırdı değilken sadece yükseltilmiş, yani bir sonraki kod satırı olay yükseltir t:
Statuses [0] = true;
Her hücre değiştiğinde olayı nasıl artırabilirim?
Evet, ObservableCollection kullanarak gitmek en kolay yolu olacaktır. –
'ObservableCollection', içindeki herhangi bir öğenin değeri değiştirildiğinde bildirimde bulunmamaktadır. –
decyclone
@decyclone: koleksiyonun nth öğesinin taşındığını, değiştirildiğini, OP'nin kodunun yaptığı gibi bildirir. Bunun T'nin özelliklere sahip olduğu ve INotifyPropertyChanged uygulanmadığı durumla başa çıkmayacağından, ancak sorunun kapsamı dışında olduğunu düşündüğümden emin olabilirsiniz. –