VS2010 Winforms Изменения Usercontrol не отображаются в родительской форме - PullRequest
3 голосов
/ 21 сентября 2010

Я создал серию пользовательских контролей. Перетащите один из элементов управления в основную форму. Это показывает ОК. Вернулись и внесли изменения в дизайн пользовательского элемента управления. Перестроенный проект. Убран проект. вручную удалил все двоичные файлы проекта, включая папку obj. Изменения все еще не отображаются в пользовательском контроле, размещенном в главной форме. При перетаскивании нового экземпляра элемента управления из панели инструментов отображается только старая версия элемента управления.
Полностью удалили элементы управления из панели инструментов и добавили их снова, исправили проблему, но, конечно же, мне не нужно делать это каждый раз, когда я делаю изменения? Все пользовательские элементы управления находятся в той же сборке, что и основная форма. Инструмент> Параметры> Конструктор Windows Forms> Автоматическая панель инструментов Заполнить имеет значение true. Любые идеи наиболее ценятся. Thx

Ответы [ 2 ]

4 голосов
/ 21 сентября 2010

Do not добавьте элемент управления на панель инструментов самостоятельно.Это помещает копию сборки в личный каталог.Да, эта копия не обновляется автоматически, вы получаете старый элемент управления.

Положитесь на параметр «Автоматическое заполнение панели инструментов».Он автоматически добавляет все элементы управления, которые есть в загруженных вами проектах, на панель инструментов.Добавленные элементы управления находятся в верхней части панели инструментов.

0 голосов
/ 26 ноября 2010

Я согласен с ответом 1, что это то, что должно происходить, и часто происходит. Но это не всегда работает и иногда будет работать частично.

Например, мое текущее решение.

Пространство имен проекта 1 ToolsTester - Это просто временная форма для тестирования инструментов представления во втором проекте.

Пространство имен Project 2 UltimateFileFinder - имеет три представления.

Первые 2 вида (пользовательские элементы управления) UltFilesView и UltSlideShow появились на панели инструментов как обычно, поэтому я мог перетащить их на ToolsTester, чтобы опробовать их.

Затем я добавил еще один пользовательский элемент управления UltPanel, он не будет отображаться на панели инструментов. Хотя он компилируется без ошибок.

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

Я тестировал Visual Studio (полная версия) перед выпуском, и это было одной из областей, о которых я сообщил, поэтому проблема была известна до выпуска.

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

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