Как обновить диаграмму WPF при изменении коллекции? Я использую диаграмму WPF (System.Windows.Controls.DataVisualization.Toolkit.dll версия 3.5.50211.1) для построения простых данных. Классы для данных выглядят так:
public class EngineMeasurementCollection : Collection<EngineMeasurement>
{
}
public class EngineMeasurement
{
public int TimeStamp { get; set;}
public int Speed { get; set; }
public int Torque { get; set; }
public int Power { get; set; }
}
В моей главной форме я получаю новые данные о обратном вызове события. Это возвращается в другой теме. Я смотрю на данные, чтобы увидеть, есть ли у них новая метка времени. Если это так, я добавляю его в свою коллекцию. Я тогда покорно звоню
Dispatcher.Invoke(myDelegate, DispatcherPriority.Normal,null)
чтобы вернуть себя в поток GUI. Я тогда звоню:
m_ctrlLineSeriesTorque.ItemsSource = m_TorqueCollection;
, чтобы попытаться обновить график. Я подтвердил, что попал в этот код. Я также подтвердил, что могу отображать диаграмму, если просто добавлю некоторые значения в конструктор EngineMeasurementCollection. Как получить диаграмму для обновления при добавлении новых значений в коллекцию?
Где-то я видел, что на самой диаграмме может быть метод "Обновить". Я не вижу этого. Кроме того, я увидел, что, возможно, EngineMeasurementCollection должна быть «наблюдаемой коллекцией», а EngineMeasurement должен реализовывать некоторый интерфейс. Правда?
Спасибо,
Dave