0

В общем, у меня есть картинка и массив координат.

Может быть 4 координаты и в этом случае нужно нарисовать прямоугольник, а может быть координата высоты и в этом случае нужно нарисовать линию.

Все бы ничего, но нужно дать возможность это передвигать мышкой.

А потом, пользователь может нажать сохранить и вся эта разметка отрисуется на исходном образе.

Как это можно реализовать средствами WPF через MVVM?

iluxa1810
  • 24,899
  • Вот для начала: https://ru.stackoverflow.com/a/508647/218063 – Андрей NOP Feb 15 '19 at 07:28
  • Ну и надо иметь в VM не массив координат, а массив классов, для линии это будет один класс, для прямоугольника — другой и т. д. В V части будет выбираться нужный шаблон в зависимости от типа объекта с помощью DataTemplate. – Андрей NOP Feb 15 '19 at 07:30
  • @АндрейNOP, т.е я должен завезти ItemsControl, у него задать, что Canvas является хостом. У Canvas я должен буду менять Background, а в ItemTemplate описать свои контролы? – iluxa1810 Feb 15 '19 at 12:23
  • У Canvas я должен буду менять Background — зачем? а в ItemTemplate описать свои контролы? — ну скорее не в ItemTemplate, а в ресурсы положить DataTemplate для разных DataType, примерно как здесь: https://ru.stackoverflow.com/a/765122/218063 – Андрей NOP Feb 15 '19 at 12:28
  • @АндрейNOP "зачем"--- ну мне же нужно отрисовать картинку, а на ней уже по координатам расположить контролы. – iluxa1810 Feb 15 '19 at 12:30
  • А, картинку... Ну я бы сделал один Grid, в него Image с картинкой и в него же ItemsSource со всем вышеперечисленным – Андрей NOP Feb 15 '19 at 12:32
  • @АндрейNOP, еще вопрос: А как можно дать пользователю возможность ресайзить контрол? – iluxa1810 Feb 15 '19 at 13:53
  • Навскидку, отображать маркеры и перетаскивать их – Андрей NOP Feb 15 '19 at 17:17

0 Answers0