Как с помощью Winforms сделать графическую панель, которую можно перетаскивать, увеличивать / уменьшать и выделять элементы внутри? - PullRequest
1 голос
/ 02 сентября 2011

Я использую C # и .net 3.5 для создания приложения Winforms.

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

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

1 Ответ

1 голос
/ 02 сентября 2011

Я упоминал об этом ранее в комментарии, но, вероятно, лучшее решение - создать пользовательский UserControl.Вы можете специально обрабатывать события, которые хотите обработать (MouseDown, MouseMove, MouseUp, события клавиатуры и т. Д.).

Нарисуйте изображение и установите его в качестве фона для элемента управления.Затем вы можете добавить элемент управления (или несколько элементов управления!) В форму для ваших целей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...