Создание пользовательского интерфейса



Быстрота и удобство создания пользовательских интерфейсов в Visual C# обеспечивается благодаря Windows Form Designer или Windows Presentation Foundation (WPF) Designer. Создание пользовательских интерфейсов происходит в три основных этапа.

· Добавление элементов управления на поверхность разработки.

· Установка начальных свойств для элементов управления.

· Написание обработчиков для заданных событий.

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

Примечание.
При помощи Visual C# можно также создавать консольные приложения с простым пользовательским интерфейсом на основе текста.

Добавление элементов управления

Элементы управления, являющиеся компонентами с визуальным представлением (например, кнопки и текстовые поля) можно перетащить мышью в поверхность разработки одного из конструкторов. На рисунке ниже показано поле со списком, которое при помощи перетаскивания из Панели элементов было добавлено в форму в Конструкторе Windows Forms.

 


As you work visually, the Windows Forms Designer translates your actions into C# source code and writes them into a project file that is named name.designer.cs where name is the name that you gave to the form. Similarly, the WPF designer translates actions on the design surface into Extensible Application Markup Language (XAML) code and writes it into a project file that is named Window.xaml. When your application runs, that source code (Windows Form) or XAML (WPF) will position and size your UI elements so that they appear just as they do on the design surface.


При работе в визуальном режиме конструктор Windows Forms переводит выполняемые действия в исходный код C# и записывает их в файл проекта с именем имя.designer.cs, где имя – имя, назначенное форме. Подобным образом, конструктор WPF переводит действия на поверхности разработки в код языка XAML и записывает его в файл проекта с именем Window.xaml. Когда приложение будет выполняться, исходный код (Windows Form) или XAML (WPF) разместит элементы пользовательского интерфейса и скорректирует их размер так, как они отображаются на поверхности построения.

 


Setting Properties

After you add a control to the design surface, you can use the Properties window to set its properties, such as background color and default text.

In the Windows Form designer, the values that you specify in the Properties window are the initial values that will be assigned to that property when the control is created at run time. In the WPF designer, the values that you specify in the Properties window are stored as attributes in the window's XAML file.

In many cases, those values can be accessed or changed programmatically at run time by getting or setting the property on the instance of the control class in your application. The Properties window is useful at design time because it enables you to browse all the properties, events, and methods supported on a control.

Handling Events

Programs with graphical user interfaces are primarily event-driven. They wait until a user does something such as typing text into a text box, clicking a button, or changing a selection in a list box. When that occurs, the control, which is just an instance of a .NET Framework class, sends an event to your application. You have the option of handling an event by writing a special method in your application that will be called when the event is received.

You can use the Properties window to specify which events you want to handle in your code. Select a control in the designer and click the Events button, with the lightning bolt icon, on the Properties window toolbar to see its events. The following icon shows the events button.

When you add an event handler through the Properties window, the designer automatically writes the empty method body. You must write the code to make the method do something useful. Most controls generate many events, but frequently an application will only have to handle some of them, or even only one. For example, you probably have to handle a button's Click event, but you do not have to handle its SizeChanged event unless you want to do something when the size of the button changes.

 


Задание свойств

После добавления элемента управления на поверхность разработки в окне Свойства можно задать его свойства, такие как цвет фона и текст по умолчанию.

В конструкторе Windows Form значения, задаваемые в окне Свойства, являются начальными значениями, которые будут назначены соответствующему свойству при создании элемента управления во время выполнения. В конструкторе WPF значения, задаваемые в окне Свойства, хранятся как атрибуты в файле XAML окна.

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

Обработка событий

Программы с графическим интерфейсом пользователя главным образом основаны на событиях. Такие программы ожидают действий пользователя, например ввода текста в текстовое поле, нажатия кнопки или изменения выбора в поле со списком. При выполнении действия элемент управления, который всего лишь представляет собой экземпляр класса .NET Framework, отправляет событие в приложение. Для обработки события можно написать специальный метод в приложении, который будет вызван при получении события.

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

При добавлении обработчика событий через окно Свойства конструктор автоматически заполняет пустое тело метода. Чтобы метод выполнил некоторое действие, необходимо написать код. Большинство элементов управления создают много событий, но часто приложению придется обрабатывать лишь часть из них или даже только одно. Например, возможно потребуется обработать событие Click для кнопки, но не ее событие SizeChanged, если только нет необходимости в каких-либо действиях при изменении размера кнопки.

 


Editing Code

The Visual C# Code Editor is a word processor for writing source code. Just as Microsoft Word provides extensive support for sentences, paragraphs, and grammar, the C# Code Editor does the same for C# syntax and the .NET Framework. This support can be grouped into five main categories:

· IntelliSense: Continually updated basic documentation on .NET Framework classes and methods as you type them in the editor, and automatic code generation.

· Refactoring: Intelligent restructuring of your code base as it evolves over the course of a development project.

· Code snippets: A library you can browse that contains frequently repeated code patterns.

· Wavy underlines: Visual notifications of misspelled words, erroneous syntax, and warning situations as you type.

· Readability aids: Outlining, code formatting, and colorization.

Note:
Your computer might show different names or locations for some of the Visual Studio user interface elements in the following instructions. The Visual Studio edition that you have and the settings that you use determine these elements.

IntelliSense

IntelliSense is the name of a set of related features that are designed to minimize the time that you spend looking for help and to help you enter code more accurately and efficiently. These features all provide basic information about language keywords, .NET Framework types, and method signatures as you type them in the editor. The information is displayed in ToolTips, list boxes, and smart tags.

Note:
Many of the features in IntelliSense are shared with other Visual Studio languages and are documented with illustrations in the Coding Aids node of the MSDN library. The following sections provide a brief overview of IntelliSense, with links to the complete documentation.

 


Редактирование кода

Редактор кода Visual C# является текстовым процессором для написания исходного кода. Подобно тому, как приложение Microsoft Word обеспечивает расширенную поддержку предложений, параграфов и грамматики, редактор кода C# поддерживает то же самое для синтаксиса C# и платформы .NET Framework. Эта поддержку можно разделить на пять основных категорий:

· IntelliSense: постоянно обновляемая базовая документация по классам и методам .NET Framework по мере их ввода в редакторе и автоматическое создание кода.

· Оптимизация: интеллектуальная реструктуризация кода, происходящая в процессе разработки проекта.

· Фрагменты кода: библиотека с часто используемыми образцами кода.

· Подчеркивание волнистой линией: визуальные уведомления о неправильно написанных словах, ошибочном синтаксисе и предупреждения по мере набора кода.

· Вспомогательные средства для упрощения чтения кода: структурирование, форматирование кода и выделение цветом.

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

IntelliSense

IntelliSense – это название набора связанных возможностей, которые призваны сократить время, затрачиваемое на поиск справочных сведений, и помочь в написании кода без ошибок и с большей эффективностью. Все эти возможности предоставляют сведения о ключевых словах языка, типах .NET Framework и сигнатурах методов по мере их набора в редакторе. Сведения выводятся в виде всплывающих подсказок, полей со списками и смарт-тегов.

Примечание.
Большинство возможностей IntelliSense являются общими для языков Visual Studio и задокументированы c примерами под узлом Вспомогательные средства кодирования в библиотеке MSDN. В указанных далее разделах содержится краткий обзор технологии IntelliSense со ссылками на полную документацию.

 


Completion Lists

As you enter source code in the editor, IntelliSense displays a list box that contains all the C# keywords and .NET Framework classes. If it finds a match in the list box for the name that you are typing, it selects the item. If the selected item is what you want, you can just press TAB and IntelliSense will finish entering the name or keyword for you.

Quick Info

When you hover the pointer over a .NET Framework type, IntelliSense will display a Quick Info ToolTip that contains basic documentation about that type.

 


Списки завершения

По мере ввода исходного кода в редакторе, IntelliSense выводит поле со списком, в котором содержатся все ключевые слова языка C# и классы .NET Framework. Если набираемый элемент совпадает с вариантом из списка, он выбирается. И если выбранный элемент – это именно то, что нужно, то можно просто нажать клавишу TAB, и IntelliSense закончит ввод имени или ключевого слова самостоятельно.

Краткие сведения

При наведении указателя на тип .NET Framework, IntelliSense выводит всплывающую подсказку с краткими сведениями из базовой документации по этому типу.

 


List Members

When you enter a .NET Framework type into the Code Editor, and then type the dot operator (.), IntelliSense displays a list box that contains the members of that type. When you make a selection and press TAB, IntelliSense enters the member name.

Parameter Info

When you enter a method name in the Code Editor, and then type an opening parentheses, IntelliSense will display a Parameter Info ToolTip that shows the order and types of the method's parameters. If the method is overloaded, you can scroll down through all the overloaded signatures.

Add usings

Sometimes you may try to create an instance of a .NET Framework class without a sufficiently qualified name. When this occurs, IntelliSense displays a smart tag after the unresolved identifier. When you click the smart tag, IntelliSense displays a list of using directives that will enable the identifier to be resolved. When you select one from the list, IntelliSense adds the directive to the top of the source code file and you can continue coding at your current location.

 


Список членов

Если в редакторе кода ввести тип .NET Framework, а затем набрать оператор точки (.), IntelliSense выводит поле со списком, содержащее члены такого типа. Если выделить элемент и нажать клавишу TAB, IntelliSense введет имя члена.

Сведения о параметрах

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

Добавление директив using

В некоторых случаях можно попытаться создать экземпляр класса .NET Framework без полного имени. Тогда IntelliSense отображает смарт-тег после неразрешенного идентификатора. Если щелкнуть смарт-тег, IntelliSense выведет список директив using или квалификаторов, которые позволят разрешить идентификатор. После выбора из списка IntelliSense либо добавить директиву в начало файла с исходным кодом, либо вставит квалификатор перед неразрешенным идентификатором.

 


Refactoring

As a code base grows and evolves over the course of a development project, it is sometimes desirable to make changes in order to make it more readable to humans, or more portable. For example, you may want to split some methods up into smaller methods, or change method parameters, or rename identifiers. The Refactoring feature, which you can find by right-clicking in the Code Editor, does all this in a way that is much more convenient, intelligent, and complete than traditional tools such as search and replace.

Code Snippets

Code snippets are small units of typically used C# source code that you can enter accurately and quickly with only several keystrokes. The code snippet menu is accessed by right-clicking in the Code Editor. You can browse from among the many snippets provided with Visual C#, and you can also create your own.

Wavy underlines

Wavy underlines give you instant feedback on errors in your code as you type. A red wavy underline identifies a syntax error such as a missing semicolon or mismatched braces. A green wavy underline identifies a potential compiler warning, and blue identifies compiler errors. The following illustration shows a red wavy underline:


Оптимизация кода

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

Фрагменты кода

Фрагменты кода – это небольшие блоки часто используемого исходного кода C#, который можно быстро и безошибочно ввести при помощи всего нескольких действий. Чтобы открыть меню фрагментов кода, необходимо щелкнуть правой кнопкой мыши в редакторе кода. Можно сделать выбор из множества фрагментов, поставляемых с Visual C#, или создать собственный фрагмент.


Дата добавления: 2019-03-09; просмотров: 335; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!