Панели Results и Tools

78

Панель Results

При наборе кода или разметке документа вручную вы, конечно, можете допустить ошибки или опечатки, неверно набрав или выделив прописными буквами ключевое слово, не закрыв скобкой кодовый блок или не завершив элемент XAML соответствующим дескриптором, и т.п. Если вы попытаетесь выполнить приложение, построенное таким образом в Expression Blend, нажав функциональную клавишу <F5> или комбинацию клавиш <Ctlr+F5>, на панели Results (Результаты) появится перечень обнаруженных ошибок.

Если вы дважды щелкнете на любой обнаруженной ошибке, то в Expression Blend автоматически откроется соответствующий исходный файл, а курсор установится на том месте, где была обнаружена ошибочная строка кода или разметки документа.

В качестве примера на рисунке ниже показано, каким образом на панели Results выводятся обнаруженные ошибки, намеренно внесенные в проект ColorsSwatchSL в целях демонстрации:

Панель Results

Панель Tools

Закройте текущий файл исходного кода, если открыли его, следуя приведенным выше указаниям, а затем откройте XAML-файл, например MainWindow.xaml. По умолчанию слева в рабочем окне Expression Blend появляется вертикальная полоса кнопок, напоминающая панель инструментов в Visual Studio тем, у кого имеется опыт работы в этой среде. Это и есть панель Tools (Инструменты), на которой доступны самые разные и чаще всего используемые элементы пользовательского интерфейса, в том числе элементы управления, диспетчеры компоновки, простые геометрические формы и пр. Эти элементы можно выбирать на панели Tools для создания собственных пользовательских интерфейсов.

Справа от отдельных пиктограмм на панели Tools можно обнаружить мелкие белые треугольники. Если щелкнуть на таком треугольнике, не отпуская кнопку мыши, появится список элементов, связанных с данным элементом. В качестве примера на рисунке показан список дополнительных инструментов Ellipse (Эллипс) и Line (Линия), появляющихся в том случае, если щелкнуть на белом треугольнике инструмента Rectangle (Прямоугольник), не отпуская кнопку мыши.

Некоторые элементы на панели Tools

Ниже будут рассмотрены элементы панели Tools, представленные на рисунке ниже, где остальные элементы, оставляемые пока без внимания, размыты. Прежде всего следует обратить внимание на инструменты обычного выделения. А для того, чтобы стали более понятными отличия инструментов обычного выделения от инструментов прямого выделения, в рассматриваемый здесь пример проекта ColorSwatchSL придется добавить для целей демонстрации немного нового содержимого.

Для того чтобы добавить специальное содержимое в рассматриваемый здесь пример проекта, выберите узел LayoutRoot в иерархическом представлении на панели Objects and Timeline, поскольку далее вам предстоит ввести новый объект в главном диспетчере компоновки. Затем выберите инструмент Pencil (Карандаш) на панели Tools (он находится в группе инструмента Pen (Перо)). Для того чтобы выбрать инструмент Pencil, можно также нажать клавишу <Y>.

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

Убедитесь в том, что вновь созданная геометрическая форма выделена на панели Objects and Timeline (в иерархическом представлении она должна быть обозначена узлом [Path]), а затем воспользуйтесь панелью Properties, чтобы присвоить вновь созданной форме подходящее имя, например myPolygon (мой многоугольник), в текстовом поле Name, расположенном в верхней части данной панели.

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

Форма простого многоугольника, созданная инструментом Pencil

Далее вам предстоит организовать взаимодействие с данным объектом в коде, а до тех пор следует поближе ознакомиться с самой панелью Tools.

Инструменты обычного и прямого выделения

На панели Tools доступны два разных инструмента выделения элементов на монтажном столе: Selection (Выделение) и Direct Selection (Прямое выделение). В связи этим невольно возникает вопрос: а зачем вообще нужны два инструмента для выделения элементов?

Дело в том, что если попытаться просто выделить элемент на монтажном столе, чтобы переместить его в пределах окна или отдельного элемента управления или же изменить его размеры маркерами, вытягиваемыми из ограничивающей рамки в визуальном конструкторе, то для этого потребуется обычное выделение. С этой целью активизируйте сначала инструмент Selection (с изображением черной стрелки на пиктограмме), нажав оперативную клавишу <V>, а затем проверьте, сможете ли вы изменить размеры или переместить специальный графический объект (созданную ранее произвольную геометрическую форму) на монтажном столе.

С другой стороны, если требуется выделить отдельные отрезки, составляющие геометрическую форму, или же поправить сложное внутреннее содержимое класса, производного от класса ContentControl, то для этого потребуется прямое выделение. С этой целью активизируйте инструмент Direct Selection (с изображением белой стрелки на пиктограмме), нажав оперативную клавишу <А> и обратите внимание на то, что теперь вы сможете выделять отдельные отрезки многоугольной формы:

Прямое выделение

Видоизменив произвольную геометрическую форму, вновь щелкните на пиктограмме инструмента Selection, чтобы еще раз переместить эту форму по поверхности визуального конструктора. Затем перейдите в режим прямого выделения, выбрав инструмент Direct Selection, измените любой отрезок данной формы и опять вернитесь к режиму обычного выделения. Вам придется привыкнуть к частой смене режимов выделения во время работы над своим проектом, поэтому постарайтесь запомнить оперативные клавиши <V> и <А> для быстрого выбора инструментов Selection и Direct Selection соответственно.

Инструменты масштабирования и панорамирования

Изменить масштаб участка монтажного стола с графическими данными можно, перемещая колесико мыши или же настраивая соответствующий элемент управления в левом нижнем углу монтажного стола. Но имеется и третий способ: воспользоваться инструментом Zoom (Масштаб), который можно выбрать как на панели Tools, так и нажатием оперативной клавиши <Z>.

Итак, выберите инструмент Zoom на панели Tools (с изображением увеличительного стекла на пиктограмме), а затем щелкните на любом участке монтажного стола, чтобы увеличить его масштаб. Если вы дополнительно нажмете клавишу <Alt>, щелкая на выбранном участке монтажного стола, его масштаб уменьшится. И наконец, если вы дважды щелкнете на пиктограмме инструмента Zoom на панели Tools, участок монтажного стола с графическими данными вернется к исходному масштабу, определяемому в разметке XAML.

Инструмент Pan (Панорамирование), с изображением руки на пиктограмме, служит альтернативой комбинации клавиши <Ctrl> и колесика мыши в том отношении, что если выбрать сначала этот инструмент, нажав оперативную клавишу <Н>, а затем щелкнуть и перетащить курсор мыши по монтажному столу, то произойдет переход к соответствующему участку, визуализируемому на монтажном столе. Инструментом Pan удобнее всего пользоваться в тех случаях, когда масштаб сложного графического объекта слишком сильно изменен и требуется перейти к конкретному участку, чтобы поправить встроенное содержимое.

Библиотека ресурсов и панель Assets

На панели Tools отображаются далеко не все элементы, которые могут быть использованы для построения пользовательского интерфейса приложения на платформе WPF или Silverlight. Когда потребуются дополнительные элементы пользовательского интерфейса, на помощь может прийти библиотека ресурсов (Assets), которую нетрудно открыть, щелкнув на крайней справа кнопке на панели Tools (на этой кнопке изображен знак »). Как показано на рисунке, содержимое библиотеки ресурсов разделено на несколько категорий высокого уровня:

Ресурсы в панели Tools

Ниже вкратце описывается общее назначение дополнительных ресурсов по отдельным категориям:

Project

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

Controls

К этой категории относятся все элементы управления, используемые для построения пользовательского интерфейса приложений на платформе WPF или Silverlight

Styles

К этой категории относятся любые стили оформления, специально созданные для текущего проекта

Behaviors

К этой категории относятся виды поведения, которые представляют собой объекты, позволяющие фиксировать типичные события непосредственно в разметке, не прибегая к необходимости писать для этой цели специальный код C# или VB.

Shapes

К этой категории относятся предварительно визуализированные геометрические формы (шестиугольники, выноски, звезды и т.д.), которые можно добавлять в текущий проект. Это дает возможность вводить стандартные формы более оперативно, чем с помощью инструментов Pen и Pencil

Effects

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

Media

Эта категория подобна категории Project в том отношении, что в ней доступны специальные ресурсы текущего проекта, но к категории Media относятся только файлы изображений, видео- и аудиозаписей

Categories

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

Locations

К этой категории относятся все библиотеки .NET (или так называемые сборки), содержащие различные ресурсы, применяемые в проектах на платформах WPF и Silverlight

Во время работы в Expression Blend IDE приходится нередко обращаться к дополнительным ресурсам, и поэтому в этой среде предоставляется еще один способ доступа к дополнительным ресурсам через панель Assets (Ресурсы), которая показана на рисунке:

Панель Assets

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

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