Как мне построить приложение для построения диаграмм в .NET? - PullRequest
4 голосов
/ 11 июня 2009

Я хочу написать приложение для сидения с графическим интерфейсом, которое позволяет пользователям рисовать и комментировать простые «карты» мест для сидения.

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

В Java-land есть платформа графического редактирования (GEF) - есть ли что-то подобное в пространстве .NET? Должен ли я просто использовать примитивы System.Drawing.Drawing2D и обрабатывать все это сам?

Ответы [ 5 ]

4 голосов
/ 11 июня 2009

Вот продукт от Неврон . Это платное дело, но выполнение всего этого само по себе займет много времени и усилий.

Открытая диаграмма и EasyDiagram.net доступны в Codeplex . Обязательно скачайте и посмотрите их код.

2 голосов
/ 25 января 2012

Выезд NShape . Это среда построения диаграмм с открытым исходным кодом, написанная на C # и довольно мощная. Его элементы управления являются элементами управления WinForms, но вы также можете использовать его для WPF.

2 голосов
/ 11 июня 2009

Существует Netron Library для построения диаграмм. Это открытый исходный код и использует GDI +.

1 голос
/ 29 июля 2009

Вы можете рассмотреть возможность использования DSL Toolkit из Visual Studio SDK. Он позволяет вам создать графический DSL-конструктор, сначала создав модель предметной области, а затем создав графическую нотацию, которая позволит пользователям создавать или редактировать экземпляры этой модели.

Вы вполне можете создать графическую запись, которая выглядит как зона отдыха. Это позволит вашим пользователям не только «составлять схемы», но и создавать файл, содержащий модель заполненного домена того, что было схематично.

0 голосов
/ 29 июля 2009

Проверьте наш компонент MetaDraw - www.MetaDraw.com MetaDraw разработан для того, чтобы сделать такие приложения проще. MetaDraw будет поддерживать фоновое изображение и слой аннотации Вы можете поместить пользователей в различные режимы редактирования - Линии, Кривые, Текст, Фигуры и т. Д. Каждый нарисованный элемент отличается - как и в Visio, поэтому вы можете позволить пользователям выбирать объекты и перемещать их или изменять их размер. Каждый объект может иметь несколько скрытых тегов (например, номера мест или указатели записей в базе данных). Вы можете распознать, какие объекты выбирают пользователи (например, предпринять некоторые действия, когда пользователь нажимает на место 22). Вы можете динамически изменять свойства по коду - например, искать место 22 и менять его цвет заливки. Конечно, вы также можете прокручивать, масштабировать, печатать, сохранять в различных форматах и ​​т. Д.

...