Я использую Datagrid, связанный с ObservableCollection в классе Logbook. Также в классе Logbook у меня есть множество других свойств, которые в основном учитывают разные времена, которые необходимо добавить.Datagrid изменяет обновление многих свойств?
Проблема, с которой я столкнулся, заключается в том, что я не могу уведомлять свойства для обновления, когда что-то добавлено или удалено из Datagrid, потому что у меня CanUserAddRows установлено значение true.
Есть ли способ установить в XAML обновление этих свойств или наследовать от ObservableCollection и переопределить методы и добавить мои собственные свойства с уведомлениями?
LogbookEntry.cspublic class LogbookEntry {
public decimal TotalTime { get; set; }
public decimal SoloTime { get; set; }
public decimal PICTime { get; set; }
}
Logbook.cs
public class Logbook {
public ObservableCollection<LogbookEntry> Entries { get; private set; }
public decimal TotalTime { get; private set; } // THESE ALL NEED TO BE ADDED
public decimal SoloTime { get; private set; } // UP IN THE SAME COLUMN FROM
public decimal PICTime { get; private set; } // ALL ENTRIES
}
Сейчас Datagrid просто перечисляет TotalTime, SoloTime и столбцов PICTime как 0, потому что у меня нет возможности обновлять их, когда материал добавляется к Записи. Я имею в виду, может быть:
Logbook.cs
public class Logbook : ObservableCollection<LogbookEntry> {
public decimal TotalTime { get; private set; }
public decimal SoloTime { get; private set; }
public decimal PICTime { get; private set; }
public override Add(...) {
base.Add(...);
TotalTime += logbookEntry.TotalTime;
OnPropertyChanged(TotalTime);
SoloTime += logbookEntry.SoloTime;
OnPropertyChanged(SoloTime);
PICTime += logbookEntry.PICTime;
OnPropertyChanged(PICTime);
}
}
Если нет какой-либо способ для меня, чтобы сделать это из XAML ...
Спасибо за это! Чтобы сделать его более конкретным, можете ли вы предоставить несколько строк кода? Еще раз спасибо! – keelerjr12