Подтвердить что ты не робот

Visual Studio не добавляет мой компонент (из библиотеки DLL) в панель инструментов, даже если я ссылаюсь на него

Как указано в названии, я скопировал свою DLL в проекте Visual Studio, установил ее в "content" и "copy always". Добавлена ​​ссылка на эту DLL и установите для нее "скопировать локально".

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

Как я могу решить эту проблему?

Если я напрямую свяжу проект DLL с этим проектом, он работает, но теперь я рассматриваю DLL как "внешнюю", поэтому он не является частью одного и того же решения проекта DLL.

4b9b3361

Ответ 1

Как я нашел, чтобы это работало:

  • Добавить dll, ссылаться на него
  • Скомпилировать проект
  • Сохраните решение и перезапустите визуальную студию.

И затем элементы управления отображаются в панели инструментов (не всегда работают, я думаю, это своего рода ошибка визуальной студии)

Ответ 2

  • Щелкните правой кнопкой мыши на панели инструментов.
  • Нажмите "Выбрать элементы..."
  • Нажмите "Обзор..."
  • Перейдите к своей DLL и нажмите "Открыть"
  • Затем нажмите "ОК"

Затем ваши компоненты должны отображаться

Ответ 3

У меня была эта проблема с @AndrewFinnell solution:

В "c:....\XXXX.dll" нет компонентов, которые можно разместить на панели инструментов.

Итак, я решил с помощью перетащить:

  • откройте проводник Windows и перейдите к DLL
  • перетащите DLL и отбросьте его в Visual Studio на панели инструментов, где вы хотите, чтобы ваши компоненты отображались.

Я также понял, что некоторые компоненты могут иметь проблемы с совместимостью с некоторыми версиями .NET Framework. Например, Профессиональный календарь/Повестка дня, который вы будете использовать, похоже, не работает с .NET 4.5, в то время как с .NET 4.

Ответ 4

Как сказано выше,

  • Я ссылаюсь на DLL в проекте клиента: в правом обозревателе решений щелкните правой кнопкой мыши > Добавить ссылку, в это время пользовательский элемент управления не появится в панели инструментов.

  • Я сохраняю его и закрываю проект клиента.

  • Я перезапускаю Visual Studio 2012 и снова открываю клиентский проект. Теперь пользовательский элемент управления находится в панели инструментов.

  • Я снова открываю проект пользовательского контроля, вношу некоторые изменения и компилирую.

  • И самое главное, все изменения, которые я внес в проект DLL автоматически, были обновлены в проекте клиента без необходимости повторного добавления "Добавить ссылку".

Ответ 5

Вот что я сделал.

После установки загрузки таблицы 3.5 с MSDN-ссылки я вручную скопировал dll-диаграммы 3.5 в свой проект и ссылаюсь на них. Затем, из "выбрать элемент" панели инструментов, перейдите к библиотеке dll и добавьте их в панель инструментов. Убедитесь, что флажок установлен для "диаграммы" во всплывающем окне "выбрать элемент".

После этого элемент "диаграмма" в панели инструментов должен быть доступен и включен для проекта .NET 3.5.

Примечание (Я использую Visual Studio 2010. Я думаю, что мое решение должно работать в 2012 году.)

Ответ 6

У меня была такая же проблема. Я работаю в Visual Studio 2010.

Моя библиотека управления пользователями написана на С#, и мой проект, который я импортирую, находится в Visual Basic.

Если бы у меня был проект С# в моем решении, пользовательские элементы управления отображались автоматически. Но если бы я только ссылался на DLL, он не загружал пользовательские элементы управления из библиотеки ссылок в "Панель инструментов".

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

Это была проблема, с которой я сидел на горере последние 2 года.

Я бы проголосовал за предыдущий ответ, но пока у меня не хватает репутации.

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

Так

  • Ссылка на библиотеку пользовательских элементов управления
  • Отбросьте DLL файл в окно инструмента.

Один из вопросов, который я имею в связи с этим: что произойдет, если вы измените ссылку на проект на DLL (потому что она перемещена), а не пытаетесь обновить ссылку на инструментарий (удалив элемент управления из панели инструментов и перетащив DLL из нового местоположения)?

Ответ 7

Я пробовал следовать другим ответам (спасибо всем вам!), но у меня возникла эта проблема, и я дам вам понять, как я ее решил, и показать свои собственные инструменты на панели инструментов (в VS 2017).

  • Поместите файл .ddl в любое решение библиотеки.
  • Затем я добавляю, что .ddl как ссылка на мой нужный проект
  • Создайте проект и перезапустите Visual Studio
  • Затем, когда я смотрю в панель инструментов, мое собственное имя панели инструментов появляется в панели инструментов, когда я расширяю, что я получил ниже сообщения

    В этой группе нет доступных элементов управления. Перетащите элемент на этот текст для добавления в toolbok

    введите описание изображения здесь

  • Я перетащил .dll и упал под этим текстом, а затем все мои собственные инструменты появились в моей панели инструментов.

Ответ 8

И добавь lib. в папку в вашем примере решения Solutionfolder/bin/debug, а затем добавьте ссылку на объект из этой папки, наконец пересоберите, выйдите, вернитесь, перетащите dll из этой папки решения/.../../и он, вероятно, появится.