Не валидные свойства при создании / редактировании локомотива теперь будут подсвечиваться томатным цветом;
Высота строки для свойств теперь определяется как *, чтобы обеспечить правильную работу ScrollViewer-а
RequiredProperties в модели создания локомотива заменены на CustomizeableProperties и CustomizedProperties
Сделано добавление свойств в список редактируемых через контекстное меню
Поменял initials.xml, сделал некоторые свойства недоступными к изменению
Вывод значений по-умолчанию при выборе свойства для переопределения
Разделил модель создания локомотива на абстракцию работы со свойствами и конкретику создания карточки локомотива
Оказалось, что в одной из перегрузок функции аггрегации свойст HropertiesHolder-а выходной результат был указан как IEnumerable вместо IQUeryable, что сильно замедляло процесс построения списка изменяемых свойств
Перевёл систему редактирвоания локомотива с системы с наследованием и переопределением на систему с содержанием редактора свойств
Поменял методы создания PropertiesEditorViewModel
Приляпал редактирование карточки локомотива
Теперь сохраняться должны только те свойства, которые были изменены в ходе последней сессии
Изменённые свойства теперь отмечаются томатной звёздочкой
Команда на сохранение изменений в карточке теперь доступна только если изменения есть
Подредактировал дизайн кнопок и шаблон кнопки LabeledButton
Проверка на то, может ли быть выполнена команда редактирования локомотива
ГОВНОКОД!
Отвратным образом наговнокодил открытие контекстного меню кнопки по левому щелчку мыши.
Теперь нельзя открыть редактор карточки если текущая страница и так редактор карточки
Типизированные модели представления значений свойств при редактировании, типизированные представления для них
Подшаманил представления для булевых свойств
Сделал TValue в EditableValueViewModel Nullable<> и в констркутор добавил тип значения -- всё ради того, чтобы не вылетало при попытке редактирования величины, которая сейчас null