Редактор пользовательских форм зависает при удалении пользовательского элемента управления из вкладки tabcontrol
Привет,
Я разработал пользовательский конструктор форм, с помощью которого я могу создать форму с несколькими пользовательскими элементами управления. Я также разработал функцию отмены/повтора в этом редакторе форм, используя класс UndoEngine.
Когда UndoEngine включен и пользователь удалил элемент управления из вкладки, он фактически вызывает MenuCommandService.Вызовите метод() поверх стандартного командного идентификатора delete. И этот API на самом деле занимает много времени, чтобы вызвать метод dispose пользовательского элемента управления, что приводит к зависанию редактора форм.
Пожалуйста, предложите любое решение этой проблемы. Спасибо!
Спасибо,
Кумар
Что я уже пробовал:
Я попытался вызвать метод invoke() в отдельном потоке, но безрезультатно.
я попытался получить дескриптор фактического объекта и вызвать host.destroycomponent(object).
Я попытался вызвать метод Invoke() асинхронно.
Ralf Meier
С этой небольшой информацией я не могу сделать никаких предположений.
Необходимо знать, как работает ваш форм-дизайнер, а также как именно вы действуете (или думаете, что действуете), если элемент управления удален ...
BillWoodruff
Почему вы создали что-то похожее на конструктор форм VS ?
Знаете ли вы об ограничениях использования класса 'UndoEngine за пределами Visual Studio:
https://stackoverflow.com/a/20585060/133321
Мы не можем читать ваши мысли или ваш экран