Панель Toolbox в Visual Studio

116

Одно из основных преимуществ над другими интегрированными средами разработки состоит в том, что компания Microsoft предлагает пользователям реальную возможность перемещать элементы при проектировании как веб-, так и сложных клиентских приложений. Все эти элементы размещены в окне Toolbox (Ctrl+Alt+X), доступ к которому можно получить посредством меню View:

Окно Toolbox в Visual Studio

Окно Toolbox имеет интересное свойство: вы можете скопировать фрагмент кода в него, щелкнув на области кода и перетащив ее в окно Toolbox. Вы можете также переименовать и переупорядочить ваши фрагменты кода, сделав их действительно полезными для презентаций или хранения часто используемых фрагментов.

Окно Toolbox содержит все доступные компоненты для активного в данный момент документа, открытого в главном рабочем окне. Ими могут быть визуальные компоненты, например кнопки и текстовые поля; невидимые, сервисные объекты, например таймеры или регистрационные журналы системных событий; и даже элементы дизайна, такие как классы и интерфейсные объекты, используемые в инструменте Class Designer.

Система Visual Studio 2013 группирует доступные компоненты, а не смешивает их в одну кучу. Такая группировка по умолчанию позволяет проще находить требуемые элементы контроля; например, компоненты для работы с данными содержатся в отдельной группе Data.

По умолчанию эти группы представлены в виде списка. Каждый компонент представлен с помощью своей собственной пиктограммы и имеет название. Этим новая версия системы Visual Studio 2013 отличается от старого способа представления доступных объектов, в которых окно Toolbox просто представляло собой список пиктограмм, а пользователь должен был угадать, каким компонентам они соответствуют. Вы можете изменять представление каждой группы элементов управления по отдельности. Для этого щелкните правой кнопкой мыши в любом месте области, где расположена группа, и снимите флажок с команды List View в контекстном меню.

Группы элементов в окне Toolbox

Независимо от представления компонентов способ их использования в программе остался прежним: щелкните и перетащите желаемый компонент на форму активного документа или дважды щелкните на компоненте в системе Visual Studio, чтобы автоматически добавить его экземпляр. Визуальные компоненты, такие как кнопки и текстовые поля, появляются на форме, после чего пользователь может перемещать их, изменять размеры или фиксировать с помощью свойств сетки. Невизуальные компоненты, такие как таймер, отображаются в виде пиктограмм с ассоциированными метками в области формы, предназначенной для невидимых компонентов.

В левом верхнем углу на самом первом рисунке показана группа GettingStarted Controls с единственным компонентом SampleButton. По существу, строка "GettingStarted" - это имя проекта WPF. Он содержит элемент управления SampleButton. Когда вы начинаете создавать свои собственные компоненты или элементы управления, то, вместо того, чтобы предоставить вам вручную создавать новую закладку и повторять весь процесс добавления каждого элемента, система Visual Studio 2013 автоматически просматривает все проекты вашего решения. Как только компоненты или элементы управления будут идентифицированы (т.е. будет распознан любой класс, реализующий компонент System.ComponentModel.IComponent или System.Windows.FrameworkElement для программной модели WPF), в проекте будет создана новая закладка, на которую будут добавлены соответствующие элементы с пиктограммами и именами классов, заданными по умолчанию, в данном случае SampleButton. Когда вы используете компонент, в области невидимых элементов появляется соответствующая пиктограмма.

Система Visual Studio 2013 просматривает все проекты в вашем решении и перед, и после построения решения. Если решение состоит из многих проектов, то этот процесс может занять много времени. В таком случае следует подумать об отключении этой возможности, установив свойство AutoToolboxPopulate узла Windows Forms Designer в диалоговом окне Options равным false (Tools --> Options).

Для того чтобы настроить внешний вид элементов в окне Toolbox, добавьте в проект ваш компонент или элемент в виде побитового изображения размером 16x16 пикселей. Затем выберите вновь вставленное побитовое изображение в окно Solution Explorer и перейдите к окну Properties. Убедитесь, что свойство Build установлено равным Embedded Resource. Теперь достаточно связать атрибут вашего элемента управления с атрибутом изображения ToolboxBitmap.

Следует отметить, что при настройке окна Toolbox и внешнего вида элементов управления в программной модели Windows Presentation Foundation (WPF) используется понятие хранилища метаданных, а не атрибуты. Обычно это приводит к появлению дополнительных сборок, которые можно использовать для уточнения внешнего вида элементов управления как в системе Visual Studio 2013, так и в системе Expression Blend.

Настройка компонентов

Перечисление элементов в окне Toolbox в алфавитном порядке - хороший вариант, принятый по умолчанию, поскольку он позволяет найти неизвестный пользователю элемент. Однако, если вы используете только несколько компонентов и вам надоело прокручивать список вверх и вниз, можете создать свои собственные группы элементов управления и переместить существующие типы объектов.

Перемещение отдельного компонента не составляет труда. Найдите его в окне Toolbox, щелкните на нем и перетащите в новое место. Когда достигнете пункта назначения, отпустите кнопку мыши, и компонент будет перемещен в новое место списка. Точно так же можете переместить компонент в другую группу - просто перетаскивайте его вверх или вниз по окну Toolbox, пока не окажетесь в нужной группе. Эти действия можно выполнять как с представлением List, так и с представлением Icon.

Если хотите скопировать компонент из одной группы в другую, а не переместить его, то в ходе перетаскивания удерживайте нажатой клавишу Ctrl. Иногда удобно иметь свою собственную группу, чтобы хранить в ней элементы управления и компоненты, которые используются чаще других. Для того чтобы создать новую группу в окне Toolbox, щелкните правой кнопкой мыши в любом месте окна Toolbox и выполните команду Add Tab. Внизу окна Toolbox будет добавлена новая пустая закладка, которой вы должны присвоить имя. После того как вы назовете закладку, добавьте в нее компоненты, следуя инструкциям, описанным в этом разделе.

Если вы впервые запускаете систему Visual Studio 2013, то элементы в каждой группе будут упорядочены по алфавиту. Однако после перемещения элементов вы можете обнаружить, что они перепутаны, и решите просто начать все сначала. Все, что вам для этого необходимо, - щелкнуть правой кнопкой мыши в группе и выполнить команду Sort Items Alphabetically.

По умолчанию элементы управления добавляются в окно Toolbox в порядке следования имен их классов. Это значит, что вы столкнетесь с непонятными именами, особенно, если захотите добавить в окно Toolbox элементы управления COM. Система Visual Studio 2013 позволяет пользователю изменять имена компонентов на что-нибудь более понятное.

Для того чтобы изменить имя компонента, щелкните правой кнопкой мыши в окне Toolbox и выполните команду Rename Item. На месте первоначального названия появится поле редактирования, в которое можете ввести удобное для вас имя, даже если оно содержит специальные символы.

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

Добавление компонентов

Иногда оказывается, что конкретный компонент, который вам нужен, отсутствует в списке Toolbox. Большинство основных компонентов .NET в этом списке есть, но некоторых нет. Например, компонент WebClient class в списке Toolbox по умолчанию не указан. Управляемые приложения могут также использовать компоненты COM. После добавления в окно Toolbox объекты COM могут быть использованы точно так же, как обычные компоненты .NET, и если они закодированы правильно, то вы можете программировать работу с ними как обычно, используя окно Properties и ссылаясь на их методы, свойства и события в своем коде.

Для того чтобы добавить компонент в свое окно Toolbox, щелкните правой кнопкой мыши на группе компонентов, в которую хотите добавить новый компонент, и выполните команду Choose Items. Через какое-то время (на медленном компьютере этот процесс может занять несколько секунд, потому что машина должна просмотреть кэш .NET, чтобы определить все возможные компоненты, которые можно выбрать) отобразится список .NET Framework components, как показано на рисунке ниже:

Список компонентов .NET Framework для окна Toolbox

Помните: команда Reset Toolbox удаляет все группы команд, созданные пользователем, поэтому сначала убедитесь, что вам действительно необходимо выполнить эту функцию!

Просмотрите список, чтобы найти элемент, который хотите добавить в окно Toolbox, и установите соответствующий флажок. Можете также добавлять несколько элементов одновременно, выбирая их до того, как щелкнуть на кнопке ОК. В то же время можете удалять элементы из окна, сбрасывая соответствующие флажки в списке. Обратите внимание на то, что в этом случае соответствующие элементы удаляются из всех групп, которым они принадлежат, а не только из той группы, которую вы редактируете в данный момент.

Если вам покажется трудным найти требуемый элемент, воспользуйтесь текстовым полем Filter, фильтрующим список по имени, пространству имен и имени сборки. В редких ситуациях список может не содержать элемент вообще. Это может произойти с нестандартными компонентами, например, созданными вами или не зарегистрированными в кэше Global Assembly Cache (GAC). Вы по-прежнему можете добавить их, используя кнопку Browse, чтобы просмотреть реальные файлы на компьютере. Выбирая и отменяя выбор требуемого элемента, щелкните на кнопке ОК, чтобы сохранить настройки окна Toolbox.

Компоненты COM, WPF, Silverlight Components и Workflow Activities можно добавить точно так же. Просто щелкните на соответствующей закладке в диалоговом окне, чтобы увидеть список доступных, правильно зарегистрированных компонентов COM. Можете также использовать кнопку Browse, чтобы найти элементы управления, которых нет в списке.

Пройди тесты
Лучший чат для C# программистов