Построение простого приложения WPF
Создать приложения WPF в Visual Studio 2010 можно с помощью шаблона приложения WPF.
Создание нового приложения WPF
1. Нажать кнопку Start, пункта All Programs, выбрать Microsoft Visual Studio 2010, а затем нажать Microsoft Visual Studio 2010.
2. В Visual Studio 2010, в меню File выбрать пункт New, а затем Project.
3. В диалоговом окне New Project, выполнить следующие действия, а затем нажать кнопку ОК:
· Выбрать WPF Application.
· В поле Name ввести имя для приложения WPF.
· В поле Location ввести путь, по которому будет сохранен проект.
Добавление элементов управления в приложение WPF
1. В меню View выбрать команду Toolbox.
2. В окне Toolbox дважды щелкнуть элемент управления, который необходимо добавить в приложение.
3. Можно использовать окно конструктора (Design window) или окно XAML для настройки элемента управления.
Установка свойств элемента управления
1. В окне конструктора (Design window) щелкнуть элемент управления, который необходимо настроить.
2. Свойства можно установить следующим образом:
· Перейти в окно XAML, а затем изменить XAML определение напрямую.
· Перейти в окно Properties, а затем установить стандартные свойства.
Можно также установить свойства в Visual C# с помощью окна Code Editor.
Добавление обработчиков событий к элементам управления
1. В окне конструктора (Design window) щелкнуть элемент управления, к которому добавляется обработчик события.
2. В окне Properties на вкладке Events дважды щелкнуть событие, которое нужно добавить.
Добавление кода в WPF приложение
1. В окне Solution Explorer щелкнуть правой кнопкой мыши файл XAML, к которому добавляется код, а затем нажать кнопку View Code.
2. Можно использовать окно редактора кода (Code Editor), чтобы определить логику элемента управления.
Демонстрация: Создание простого WPF приложения
Solution: NET.CSharp.01
Project: WpfApplication
Урок 5: Документирование приложений
Урок знакомит с XML комментариями и возможностями их использования при разработке .NET приложений. В уроке описано создание файла в формате справки с помощью инструмента Sandcastle.
XML комментарии
В Visual Studio 2010 можно добавить комментарии к исходному коду, который будет обработан в файл XML. Комментарии могут быть использованы для создания справочной документации по классу, а также для поддержки IntelliSense. Для того, чтобы система IntelliSense и компилятор документации могли понимать и обрабатывать комментарии, необходимо, чтобы они писались в соответствии с определенным форматом.
Первым признаком того, что комментарий является документационным, являются три слеша (///) в его начале. Visual Studio распознает по этому признаку документационный комментарий и автоматически генерирует для него соответствующую заготовку. После генерации заготовки разработчику достаточно лишь заполнить содержимое тегов и документационный комментарий готов. В следующем примере класс Hello содержит теги документации <summary> и <seealso>.
/// <summary> Класс Hello выводит на экран приветствие
/// </summary>
public class Hello
{
/// <summary> Использован консольный ввод-вывод. Для большей информации о
/// WriteLine<seealso cref="System.Console.WriteLine()"/>
/// </summary>
public static void Main()
{
Console.WriteLine("Hello World");
}
}
Встроенные комментарии являются частью стандарта Visual C#, в то время как XML комментарии это расширение Microsoft и, как правило, они используются средствами сторонних производителей, например, таких как Sandcastle Help File Builder.
http://go.microsoft.com/fwlink/?LinkId=192887
Общие теги XML комментариев
Для документирования приложения существует несколько тегов XML, однако можно также создавать свои собственные пользовательские метки. В следующей таблице приведены XML-теги, используемые при работе с документационными комментариями, и их назначение:
Tег | Назначение |
<c> | Помечает текст как программный код. |
<exception> | Документирует класс исключения. |
<summary> … </summary> | Предоставляет краткое описание. Для более подробного описания используются теги <remarks>. |
<remarks> … </remarks> | Содержит подробное описание. Этот тег может содержать вложенные разделы (пункты), списки и другие типы тегов. |
<example> … </example> | Предоставляет пример того, как метод, свойство или другой член библиотеки должен быть использован. Этот тег часто связано с использованием вложенных тегов <code>. |
<code> … </code> | Указывает, что прилагаемый текст является кодом приложения. |
<returns> … </returns> | Документирует возвращаемое значение и тип метода. |
<include> | Включает комментарии из другого файла документации. |
<list> | Описывает список. |
<param> | Задает описание передаваемого в метод аргумента. Имеет атрибут name, задающий имя аргумента. |
<paramref> | Указывает, что слово является параметром метода. |
<permission> | Документирует доступ к члену класса. |
<see> | Предоставляет перекрестную ссылку на другой параметр. |
<seealso> | Задает раздел «Смотри также». |
<value> | Описывает свойство. |
Следует отметить, что если речь не идет о создании полноценной библиотеки классов, которую предполагается распространять как самостоятельный программный продукт и которую необходимо снабдить максимально подробной помощью, сопоставимой по возможностям с MSDN, в использовании всех этих тегов нет необходимости. В повседневной жизни разработчику необходимо задавать лишь минимальное описание созданного им программного кода, для чего вполне достаточно ограничиться знанием тегов <summary> и <param>, отображаемых в качестве подсказок системой IntelliSense, а также тега <returns>, поскольку при задании описания для методов, возвращающих значение, он генерируется автоматически и его содержимое отображается в Object Browser.
В теле программы документировать с использованием тегов <summary>, <param> и <returns> необходимо, как минимум:
· все классы, структуры, перечисления и интерфейсы;
· все не закрытые (private) поля, свойства и методы классов;
· все элементы перечислений;
· закрытые поля, свойства и методы в том случае, если тело класса имеет достаточно большой размер, или допускается хотя бы мысль о возможности его дальнейшей модификации.
При разработке коммерческих библиотекнеобходимо проводить полноценное документирование с использованием всего спектра тегов. Например, после следующего документирования класса Triangle система IntelliSense начнет отображать документационные комментарии в качестве подсказок (Рис. 8).
/// <summary>
/// Класс, описывающий треугольник по трем сторонам
/// </summary>
public class Triangle
{
private double a;
private double b;
private double c;
/// <summary>
/// Конструктор
/// </summary>
/// <param name="a"></param>
/// <param name="b"></param>
/// <param name="c"></param>
public Triangle(double a, double b, double c)
{
this.a = a;
this.b = b;
this.c = c;
}
/// <summary>
/// Определение площади треугольника по формуле Герона
/// </summary>
/// <returns>площадь треугольника</returns>
public double GetArea()
{
double p = (a + b + c) / 2;
double s = Math.Sqrt(p * (p - a) * (p - b) * (p - c));
return s;
}
}
Рис. 8.
Аналогично, при работе с объектом класса, для его методов и их аргументов также будут отображаться подсказки (Рис. 9).
Рис. 9.
http://go.microsoft.com/fwlink/?LinkId=192888