У меня есть собственный редактор пользовательского интерфейса для свойства на С#. Редактор отлично работает во время разработки. Как бы я ни хотел запускать редактор нажатием кнопки во время выполнения. Как я могу это сделать?
Спасибо, Датте.
У меня есть собственный редактор пользовательского интерфейса для свойства на С#. Редактор отлично работает во время разработки. Как бы я ни хотел запускать редактор нажатием кнопки во время выполнения. Как я могу это сделать?
Спасибо, Датте.
Использование UITypeEditor
в пользовательских (например, во время выполнения) сценариях, безусловно, является хитростью. Наиболее очевидная часть запуска UITypeEditor
довольно тривиальна: просто приведите экземпляр к UITypeEditor
и вызовите EditValue
или любой другой метод, который вы хотите.
Одна из самых сложных частей при их использовании — выяснить, какой контекст дескриптора типа предоставить, и еще сложнее — выяснить, какие услуги предоставить.
Чем больше вы знаете о конкретном редакторе, который пытаетесь разместить, тем лучше вы будете знать, какой контекст и сервис предоставлять.
То, что вы пытаетесь сделать, определенно возможно (очевидно, Visual Studio может это сделать), но это может быть очень сложно.
Что вы уже пробовали и что не работает?
Вот пример, который у меня есть: http://xacc.svn.sourceforge.net/viewvc/xacc/xacc/Controls/UIEditorForm.cs?revision=7&view=markup