Microsoft User Group Винница feedback Создайте свою среду для разработки (IDE) за 10 минут - Разработка приложений - Microsoft User Group Винница

Планируемые события:

Запуск Internet Explorer 9 в Виннице - сентябрь

 

Создайте свою среду для разработки (IDE) за 10 минут

Звучит красиво и интригующе Smile

Вот то что у нас должно получится:

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

AvalonEdit

AvalonEdit - основаный на WPF редактор используемый в SharpDevelop 4.x. В использовании AvalonEdit  очень похож на обычный TextBox!

Для загрузки документа ....

И на конец, подсветка синтаксиса:

AvalonEdit поддерживает ASP.NET, Boo, Coco/R grammars, C++, C#, HTML, Java, JavaScript, Patch files, PHP, TeX, VB, XML.

Если вам интерестно узнать подробнее об этом елементе управлеения то нужно почитать статью Daniel Grunwald’s на CodeProject. (Так же будет полезно почитать Document и Rendering которые были удалены из оригинальной статьи.)

AvalonDock

AvalonDock - библиотека WPF елементов управления которую можно задействовать для создания макета расположения дочерних окон как это сделано в Visual Studio. Это поддержка всплывающих окон, мэнеджер множественного стыкования дочерних окон, стили и темы и поддержка элементов управления WinForms.

DockingManager

DockingManager ответственен за расстановку своего контента (панели и т.д.) и для выполнения их правильного стыкования.

ResizingPanel

ResizingPanel это унаследованый от Panel классс который призван организовать свой контент (панели и т.д.) по направлению (как Orientation в StackPanel классе). Между двумя последовательными ResizingPanel елементами автоматически вставляется ResizingPanelSplitter. Потянув за сплиттер можно изменять размер ResizingPanel елемента.

DockablePane & DocumentPane

DockablePane может содержать только DockableContents и может быть перетянут и перестыкован к границе контейнера DockingManager. В добавок DockablePane может быть автоспрятан ("отстыкован")  или всплывающим если разположен в сплыващем окне. DocumentPane может содержать как DocumentContents так и DockableContents, но он не может быть перемещен.

Детальнее в отличном AvalonDock Tutorial.

ОК, правда это еще далеко не IDE, но описаные контролы были использованы при написании OpenSource продукта SharpDevelop.

Enjoy Smile

З.Ы.

оригинал статьи Create your own IDE in 10 minutes.


Related Posts with Thumbnails Posted окт 08 2009, 11:15 by Jorgen Bumajnikov View 940 3
Filed under: ,

Comments

Roman on 10-08-2009 15:52

Это не разработка IDE за десять минут, а разработка текстового редактора с подсветкой синтаксиса.

Например даже банального интеллисенса нет.

Хотя сама по себе библиотека AvalonDock(www.codeplex.com/AvalonDock) заслуживает внимания.

Хотя к ней тоже могут быть вопросы. Например загрузка/сохраниение layout и много других

LexRema on 10-08-2009 23:09

Рома, ты как всегда критичен :). Думаю, под "иде" имелись ввиду не только синтаксис, но и плавающие панели... а компилятор прикрутить - это уже по желанию :)). Уже не блокнот для редактирования штмл :).

LexRema on 10-08-2009 23:19

Кстати, писал уже о библиотеке с плавающими панелями:

msug.vn.ua/.../c-docking-pannels.aspx

Add a Comment

(required)  
(optional)
(required)  
Remember Me?
Please add 4 and 5 and type the answer here:

Enter captcha:

Информация

О нас
Timeline
Партнеры
Инфопартнерство
Реклама на сайте
Поддержать сайт

Разделы

Блоги
Медиа
Форумы
Вики
Презентации

Работа

Вакансии
Компании

Контакты

msugvn@gmail.com
krakovetsky.alex
@msugvnua
ВКонтакте
LinkedIn
Facebook
INETA

Разработка логотипа: Helen

RSS подписка - Microsoft User Group Винница  Twitter - Microsoft User Group Винница

Статистика

Powered by Community Server (Non-Commercial Edition), by Telligent Systems