Итак, как уже упоминали другие, в вашем случае вы запускаете NotifyPropertyChanged (), когда изменяется сам массив, а не какой-либо элемент массива.
Если вы хотите, чтобы элементы могли вызывать событие, вам нужно реализовать класс, подобный:
public class NotifyingData<T> : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged([CallerMemberName] String propertyName = "")
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
private T _Data;
public T Data
{
get { return _Data; }
set { _Data = value; NotifyPropertyChanged(); }
}
}
и затем заполните ваш массив этим классом:
_OffsetAngles[0] = new NotifyingData<double> { Data = 10 };
У меня сейчас нет доступа к VS, поэтому могут быть некоторые ошибки, но это должно быть правильным для вас понятием.