Наша установка
В настоящее время мы используем nANT для сборки .net, поэтому мы напрямую вызываем CSC. Мы в основном переопределяем цель Build в файле CSPROJ. Иногда мы будем использовать MSBUILD для вызова целей, таких как PrepareResources, в нашем сценарии nAnt для определенных ситуаций, таких как создание приложений WPF, где для компиляции требуются дополнительные файлы.
В нашем приложении для основных окон есть некоторые пользовательские элементы управления, которые перетаскиваются в другие формы, но когда мы просматриваем эти формы в конструкторе Visual Studio, возникает ошибка конструктора. Мы обнаружили, что причиной этой ошибки является то, что наши пользовательские элементы управления отсутствуют в наборе инструментов. Я выполнил тест из базового приложения, используя стандартную визуальную студию winapp, создал пользовательский элемент управления и создал приложение. Когда я это сделал, я заметил, что он добавил пользовательский элемент управления в набор инструментов Visual Studio. Похоже, что этот процесс происходит где-то внутри цели msbuild BUILD, которая, вероятно, вызывает другую цель для этого.
К вашему сведению: мы все еще используем кнопку «Play» в Visual Studio для компиляции файлов csproj. Единственное отличие состоит в том, что он вызывает цель "Build" в дифференциале в файле csproj вместо нашей.
Я посмотрел онлайн и просмотрел список целей msbuild и не увидел ничего, что описывает, какая цель добавляет пользовательские элементы управления на панель инструментов. Любые идеи были бы хорошы!