Visual Studio Shell и дизайнер форм.
От: Darky Darkov Россия  
Дата: 12.01.10 12:14
Оценка:
Здравствуйте.

Мне требуется разработать среду, в которой пользователь сможет только рисовать формы, без редактирования кода. Я хотел бы использовать готовый, который есть в Visual Studio. Мною был поставлен Visual Studio SDK и начато чтение документации, откуда понял, что в Visual Studio Shell есть только базовый (Core) редактор, который не включает в себя дизайнер форм. Дизайнер же поставляется с VSPackage для конкретного языка (для c# -- свой дизайнер, для VB -- свой).
Подскажите, куда копать, если мне надо:
1) вызвать редактор форм и дать возможность пользователю разместить контролы;
2) получить и обработать информацию об расположенных контролах на форме.
visual studio .net visual studio shell
Re: Visual Studio Shell и дизайнер форм.
От: muse Россия  
Дата: 12.01.10 13:30
Оценка:
Здравствуйте, Darky Darkov, Вы писали:

DD>Подскажите, куда копать, если мне надо:

DD>1) вызвать редактор форм и дать возможность пользователю разместить контролы;
DD>2) получить и обработать информацию об расположенных контролах на форме.

Все довольно просто. Не нужно использовать SDK. Того, что есть в поставке .NET вполне достаточно. Сам я наткнулся на это решение случайно, но оно зело мне понравилось. Вот пример. Он основан на использовании IDesignerHost. Очень простой и служит только для указания идеи. Это не готовый к "промышленному" использованию компонент. Как минимум в нем нет сериализации именений в какой бы то ни было форме. Надеюсь, подойдет.
Люблю повеселиться, особенно пожрать
runtime run-time design idesignerhost
Re[2]: Visual Studio Shell и дизайнер форм.
От: Darky Darkov Россия  
Дата: 12.01.10 14:00
Оценка:
Здравствуйте, muse, Вы писали:

M>Здравствуйте, Darky Darkov, Вы писали:


DD>>Подскажите, куда копать, если мне надо:

DD>>1) вызвать редактор форм и дать возможность пользователю разместить контролы;
DD>>2) получить и обработать информацию об расположенных контролах на форме.

M>Все довольно просто. Не нужно использовать SDK. Того, что есть в поставке .NET вполне достаточно. Сам я наткнулся на это решение случайно, но оно зело мне понравилось. Вот пример. Он основан на использовании IDesignerHost. Очень простой и служит только для указания идеи. Это не готовый к "промышленному" использованию компонент. Как минимум в нем нет сериализации именений в какой бы то ни было форме. Надеюсь, подойдет.


Спасибо, я уже видел похожий пример.
Раз уж мы об этом заговорили, подскажите, пожалуйста, как можно обойти ограничение максимального размера формы, которая реализует IDesignerHost (размер формы по ширине и высоте не может быть больше разрешения экрана плюс 12)?
Вон, UserControl можно сделать хоть 4000х2000, а форму -- нет.
Re[3]: Visual Studio Shell и дизайнер форм.
От: muse Россия  
Дата: 12.01.10 16:39
Оценка:
Здравствуйте, Darky Darkov, Вы писали:

DD>Раз уж мы об этом заговорили, подскажите, пожалуйста, как можно обойти ограничение максимального размера формы, которая реализует IDesignerHost (размер формы по ширине и высоте не может быть больше разрешения экрана плюс 12)?

DD>Вон, UserControl можно сделать хоть 4000х2000, а форму -- нет.

Предполагается что форма — Окно с большой буквы, не просто window с хэндлом, а именно окошко, с заголовком, кнопками раскрытия, сворачивания. Такие окна не могут быть больше текущего расширения окна. 12 пискелей — системный бордер, неклиентская часть окна. Там может быть все что угодно в зависимости от ОС. А UserControl — это window, который может скроллироваться внутри родительского контрола. И ограничение на его размер все таки есть, кажется что-то около 32,000 пикселей. Сам я этот пример не разбирал, только встретил и сохранил до лучших времен. Может быть засунуть IDesignerHost так же в UserControl? И прокручивать его. Гляньте на реализацию хоста в VS. Там тоже используется скроллинг, когда форточка не влезает в дозволенные рамки.
Люблю повеселиться, особенно пожрать
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.