Я пытаюсь создать приложение для отслеживания времени в WPF. Пользователь должен рисовать элементы, которые представляют временной интервал (timespan = bar) на холсте.
Теперь существующие столбцы добавляются, когда они привязаны к коллекции данных (каждый элемент коллекции содержит ширину и левое положение столбца на холсте).
Usercontrol 'bar' имеет свойство зависимостей, называемое ProjectProperty, которое заботится о рисовании и позиционировании панели в Canvas.
Но что должно произойти, когда пользователь рисует новую панель на холсте? Это должно как-то быть привязано к базе данных, но в какой момент времени это должно произойти, и как бы я это сделал?
Я понимаю, что каждый пользовательский элемент управления 'bar' на Canvas связан с данными просто потому, что он уже существует в источнике данных.
Скажем, пользователь начинает рисовать полосу в mousedown и заканчивает мышью, нужно ли программно добавлять его левую позицию и ширину в связанный источник данных? Если нет, как еще источник данных будет обновлен?
Спасибо!