Пример. Автоматическое заполнение панели элементов пользовательскими компонентами
Если компоненты определяются проектом в открытом в текущий момент решении, они будут автоматически отображаться на панели элементов — для этого ничего не нужно делать. Вы также можете вручную заполнить панель элементов пользовательскими компонентами с помощью диалогового окна "Выбрать элементы панели элементов" (Visual Studio), однако панель элементов учитывает элементы в выходных данных сборки решения со всеми следующими характеристиками:
реализует IComponent;
отсутствует ToolboxItemAttribute со значением
false
;отсутствует DesignTimeVisibleAttribute со значением
false
.
Примечание.
Панель элементов не следует ссылочным цепочкам, поэтому не будет отображать элементы, не созданные проектом в решении.
В данном пошаговом руководстве демонстрируется автоматическое отображение пользовательского компонента на панели элементов после сборки компонента. В данном пошаговом руководстве представлены следующие задачи.
Создание проекта Windows Forms.
Создание пользовательского компонента.
Создание экземпляра пользовательского компонента.
Выгрузка и перезагрузка пользовательского компонента.
По завершении вы увидите, что панель элементов заполняется созданным вами компонентом.
Создание проекта
В Visual Studio создайте проект приложения на основе Windows под названием
ToolboxExample
(Файл >Создать >Проект >Visual C# или Visual Basic >Классическое >Приложение Windows Forms).Добавьте компонент в проект. Назовите его
DemoComponent
.Дополнительные сведения см. в разделе Практическое руководство. Добавление новых элементов в проект.
Выполните сборку проекта.
В меню Сервис выберите Параметры. Щелкните Основные под элементом конструктора Windows Forms и убедитесь, что для параметра AutoToolboxPopulate задано значение True.
Создание экземпляра пользовательского компонента
На следующем этапе создается экземпляр пользовательского компонента в форме. Так как панель элементов автоматически учитывает новый компонент, это не сложнее создания любого другого компонента или элемента управления.
Откройте форму проекта в конструкторе Windows Forms.
На панели элементов щелкните новую вкладку с именем Компоненты ToolboxExample.
Щелкнув вкладку, вы увидите DemoComponent.
Примечание.
По соображениям производительности компоненты в автоматически заполняемой области панели элементов не отображают пользовательские растровые изображения, а ToolboxBitmapAttribute не поддерживаются. Чтобы отобразить значок пользовательского компонента на панели элементов, используйте для загрузки компонента диалоговое окно Выбор элементов панели элементов.
Перетащите компонент в форму.
Создается экземпляр компонента, который добавляется в область компонентов.
Выгрузка и перезагрузка пользовательского компонента
Панель элементов учитывает компоненты в каждом загруженном проекте и при выгрузке проекта удаляет ссылки на компоненты проекта.
Выгрузите проект из решения.
Дополнительные сведения о выгрузке проектов см. в разделе Практическое руководство. Выгрузка и перезагрузка проектов. Если появится запрос на сохранение, нажмите Да.
Добавьте новый проект приложения Windows в решение. Откройте форму в конструкторе.
Вкладка Компоненты ToolboxExample из предыдущего проекта исчезла.
Перезагрузите проект
ToolboxExample
.Вкладка Компоненты ToolboxExample появится снова.
Следующие шаги
В этом пошаговом руководстве демонстрируется, что панель элементов учитывает компоненты проекта, однако также учитывает элементы управления. Экспериментируйте с собственными пользовательскими элементами управления, добавляя в решение проекты элементов управления и удаляя их.