Как использовать WPF для создания простого приложения для построения диаграмм?

Я пытаюсь создать простое приложение для построения диаграмм с использованием WPF, и я сталкиваюсь с некоторыми серьезными препятствиями.

Приложение очень простое. У меня есть элемент холста и набор основных фигур — эллипс, прямоугольник и т. д. Пользователи выбирают форму и щелкают, чтобы разместить их на холсте. После этого приложение экспортирует данные в xml.

Код для размещения фигур был простым, однако я нахожусь на том этапе, когда хочу добавить дополнительные функции, такие как изменение размера, перемещение и вращение фигур. Я знаю, что все это делается с помощью преобразований Render/Layout. Чтобы ускорить процесс, я использовал ползунки для управления различными параметрами, но я собираюсь переключиться на (украшения + большие пальцы?), чтобы интерфейс был более интуитивным.

Все примеры, которые я видел, показывают просто огромное количество кода, чтобы заставить эти типы функций работать.

Однако кодовой базе всего несколько дней, а поддерживать ее уже сложно, а это значит, что в Альбукерке я свернул не туда.

Является ли WPF подходящим инструментом для создания приложения, которое я хочу, или мне следует рассмотреть другой набор инструментов.


person Alan    schedule 27.01.2011    source источник


Ответы (2)


Я бы посоветовал вам взглянуть на эту статью/серию CodeProject -

Конструктор диаграмм WPF — часть 4 .aspx

Еще один проект, основанный на этом, можно найти на codeplex-

http://simulo.codeplex.com/

Эти приложения почти такие же, как и ваши, в этих проектах реализовано изменение размера, перемещение, сохранение/загрузка и многие другие полезные функции.

Я создал приложение, похожее на ваше, и я бы сказал, что WPF — правильный выбор для такого рода приложений, так как вы можете очень легко реализовать множество удобных для пользователя функций. Посмотрите, как вещи реализованы в вышеупомянутых приложениях, если вы правильно спроектируете и реализуете свое приложение, его будет очень легко и безболезненно поддерживать.

person akjoshi    schedule 27.01.2011
comment
Я думаю, что это руб. Я как рыба в воде с WPF, поэтому ключевое слово правильно. Я думаю, что мне придется сделать раннюю сборку этого, а затем потратить время на его перестройку и должным образом изучить WPF, когда этот проект закончится (да, верно; p) - person Alan; 28.01.2011

Переключение на Adorners и т. д. — это путь. Тем не менее, если вы не найдете библиотеку с полезными элементами управления/логикой, вам придется довольно много кодировать. Установка только разъемов потребует определенных усилий.

Зато это веселое упражнение!

person Emond Erno    schedule 27.01.2011
comment
Спасибо! Обычно я был бы занят всей работой, но я пишу большой объем кода на различных платформах, и в результате мое время довольно ценно, я пытался найти способы сэкономить время. - person Alan; 27.01.2011