Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CSharp_for_Beginners.doc
Скачиваний:
35
Добавлен:
13.02.2015
Размер:
2.39 Mб
Скачать

`

Оглавление

Введение в язык C# и .NET Framework 6

Язык C# 6

Архитектура платформы .NET Framework 6

Creating Your First C# Application 8

To create a C# application 8

Создание первого приложения C# 8

Создание приложения C# 8

To create a C# console application 9

Создание консольного приложения C# 9

To create a C# Windows application 15

Создание приложений Windows Forms на C# 15

Introduction to Windows Presentation Foundation 25

To create a WPF application 26

Создание приложения WPF C# 26

To create event handlers 30

Создание обработчиков событий 30

30

Designing a User Interface in Visual C# 31

Adding Controls 31

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

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

Setting Properties 33

Handling Events 33

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

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

How to: Use Button Controls 34

Использование элемента управления "Button" 34

To use buttons in a program 35

Использование кнопок в программе 35

How to: Call a Button's Click Event Programmatically 36

To use buttons in a program 36

Программный вызов события нажатия кнопки 36

Использование кнопок в программе 36

How to: Create a Group of Radio Buttons from a String Array 37

Создание группы переключателей из массива строк 37

How to: Create a Non-Rectangular Button 38

How to: Display Text on a Windows Form 39

To display text in a label 39

Отображение текста в форме Windows Forms 39

Отображение текста в надписи 39

How to: Use TextBox Controls to Get User Input 40

Использование элемента управления "TextBox" для получения вводимых данных 40

To retrieve input typed in a text box 41

Извлечение введенных в текстовое поле данных 41

How to: Convert the Text in a TextBox Control to an Integer 42

Преобразование текста в элементе управления "TextBox" в целое число 42

How to: Set the Selected Text in a TextBox Control 43

Установка выделения текста в элементе управления "TextBox" 43

How to: Format Characters in a RichTextBox Control 44

Форматирование знаков в элементе управления "RichTextBox" 44

How to: Load Text into a RichTextBox Control 45

Загрузка текста в элемент управления "RichTextBox" 45

Dialog Boxes 46

How to: Retrieve Data from a Dialog Box 46

Диалоговые окна 46

Извлечение данных из диалогового окна 46

To retrieve data from a dialog box. 48

How to: Browse a Folder 50

Просмотр папки 50

How to: Save a File to a Folder 51

To display the folder browser dialog box 51

Сохранение файла в папку 51

How to: Display a List of Fonts 52

Отображение списка шрифтов 52

How to: Display an OpenFileDialog Dynamically 54

Динамическое отображение компонента OpenFileDialog 54

ListBox and ComboBox Controls 56

ListBox и ComboBox 56

Date and Time Controls 60

How to: Select a Range of Dates in a Calendar Control 60

Отображение даты и времени 61

Выбор диапазона дат в элементе управления "Calendar" 61

Извлечение даты в элементе управления "DateTimePicker" 62

How to: Display the Time in a Label 63

Отображение времени в надписи 63

How to: Display the Date and Time in Your Application 64

Отображение даты и времени в приложении 64

How to: Determine the Span Between Two Dates 66

Определение интервала между двумя датами 66

TreeView Controls 67

How to: Add Nodes to a TreeView Control 67

How to: Add Nested Nodes to a TreeView Control 67

Элементы управления "TreeView" 67

Добавление узлов к элементу управления "TreeView" 67

Добавление вложенных узлов в элемент управления "TreeView" 67

Добавление узла в выбранный узел элемента управления "TreeView" 68

Creating a Custom UI 69

How to: Add Toolbars to a Windows Forms Application 69

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

Добавление панелей инструментов в приложение Windows Forms 69

To add a set of standard toolbar button 70

How to: Create a Tooltip for a Control 71

Создание всплывающей подсказки для элемента управления 71

How to: Create a Shortcut Menu and Attach it to a Control 72

Создание контекстного меню и присоединение его к элементу управления 72

How to: Add Windows Forms Controls at Run Time 73

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

Accessing and Displaying Data 74

How to: Write Class Data to an XML File 74

Доступ к данным и их отображение 74

Запись данных класса в XML-файл 74

How to: Read XML from a File 75

Чтение XML из файла 75

How to: Read Class Data from an XML File 76

Чтение данных класса из XML-файла 76

Drawing Text and Graphics 77

How to: Draw Text on a Form 77

Рисование текста и графики 77

Отрисовка текста в форме 77

Изменение цвета текста в элементе управления Windows Forms 78

Изображение графических объектов в форме Windows Forms 79

How to: Draw a Curve on a Form 80

Рисование кривой в форме 80

How to: Draw Outlined Shapes 81

Рисование контурных фигур 81

How to: Draw a Line on a Form 82

Рисование линии в форме 82

How to: Draw a Filled Rectangle on a Form 83

Рисование заполненного прямоугольника в форме 83

How to: Draw a Filled Ellipse on a Form 84

Рисование заполненного эллипса в форме 84

Adding Multimedia to an Application 85

How to: Embed Windows Media Player on a Form 85

Добавление файлов мультимедиа в приложение 85

Внедрение проигрывателя Windows Media в форму 85

How to: Play Sounds in an Application 87

To play an audio file 87

Воспроизведение звука в приложении 87

Creating and Using Bitmaps and Icons 88

How to: Create a Bitmap at Run Time 88

Создание и использование точечных рисунков и значков 88

Создание точечного рисунка во время выполнения 88

How to: Convert Images from One Format to Another 91

Преобразование изображений из одного формата в другой 91

Customizing, Displaying, and Printing Windows Forms 92

How to: Change the Background Color of a Form 92

How to: Create a Shaped Form 92

Настройка, отображение и печать Windows Forms 92

Изменение цвета фона формы 92

Создание сложной формы 92

How to: Get a Value from Another Form 93

Получение значения из другой формы 93

How to: Display One Form from Another 94

Отображение одной формы из другой 94

Creating WPF Applications 95

Designing a User Interface for a WPF Application 95

Создание приложений WPF 95

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

To create a WPF application 96

Common WPF Controls 99

Стандартные элементы управления WPF 99

How to: Create Event Handlers for WPF Controls 103

Создание обработчиков событий для элементов управления WPF 103

Connecting to Data 104

How to: Connect to a Database 104

To add a connection to the Northwind database 104

Подключение к данным 104

Подключение к базе данных 104

Добавление подключения к базе данных "Northwind" 104

How to: Display Related Data on a Form 106

To display related data on a form 106

Отображение связанных данных в форме 106

Отображение связанных данных в форме 106

Using LINQ in C# Express 107

Advantages of Using LINQ 107

Использование LINQ в C# Express 107

Преимущества использования LINQ 107

C# Language Enhancements that Support LINQ 108

Расширения языка C# для поддержки LINQ 108

Writing LINQ Queries 109

LINQ to Objects 109

Написание запросов LINQ 109

C# Language Primer 111

Inside a C# Program 111

Hello World, C# Style 111

Язык C# для начинающих 111

Структура программы C# 111

"Hello World" в стиле C# 111

111

using Directives and Namespaces 112

Comments 112

Директивы using и пространства имен 112

Примечания 112

Classes 113

Main() 113

Классы 113

Main() 113

Console Input and Output 114

Консольный ввод и вывод 114

Program Structure and Flow of Execution 115

Windows Forms Applications 115

Структура программы и ход выполнения 115

Приложения Windows Forms 115

Console Applications 116

Namespaces 116

Консольные приложения 116

Пространства имен 116

Namespace Shortcuts 117

Creating Your Own Namespace 117

Ускоренные методы для пространства имен 117

Создание собственного пространства имен 117

Classes 119

Classes vs. Objects 119

Классы 119

Классы и объекты 119

Static vs. Instance Members 120

Classes vs. Files 120

Члены экземпляра и статические члены 120

Классы и файлы 120

Encapsulation 121

Инкапсуляция 121

Inheritance 122

Polymorphism 122

Наследование 122

Полиморфизм 122

Constructors 123

Конструкторы 123

123

Operator Overloading 124

Destructors 124

Перегрузка методов 124

Деструкторы 124

How to: Call a Method on an Object 125

Вызов метода в объекте 125

How to: Inherit From a Class 126

Наследование от класса 126

How to: Simulate Default Parameters 127

Имитация параметров по умолчанию 127

How to: Declare a Property 128

Объявление свойства 128

How to: Set a Property on an Object 129

Задание свойства объекта 129

Structs 130

Example 130

Output 130

Структуры 130

Пример 130

Результат 130

Variables and Constants 131

Переменные и константы 131

Constants 132

Built-in Data Types 132

Константы 132

Встроенные типы данных 132

Value and Reference Types 135

Типы значений и ссылочные типы 135

Operators 138

Assignment and Equality Operators 138

Операторы 138

Операторы равенства и назначения 138

138

Mathematical and Logical Operators 139

Логические и математические операторы 139

139

Increment and Decrement operators 140

Операторы увеличения и уменьшения 140

140

Relational operators 141

Реляционные операторы 141

141

Logical Condition Operators 142

More Advanced Math Operators 142

Логические условные операторы 142

Несколько дополнительных математических операторов 142

Operator Overloading 143

Перегрузка операторов 143

144

Decisions and Branching 145

Remarks 145

Выбор и ветвление 145

Loops 147

foreach Loops 147

Циклы 147

Циклы foreach 147

for Loops 148

while Loops 148

Циклы for 148

Циклы while 148

do-while Loops 149

How to: Break Out of an Iterative Statement 149

Циклы do-while 149

Разрыв итерационного оператора 149

Strings 150

Строки 150

Working with Strings 151

151

Работа со строками 151

Using StringBuilder 159

Использование класса StringBuilder 159

159

How to: Generate Multiline String Literals 160

Создание многострочных строковых литералов 160

How to: Search for a String in an Array of Strings 161

Поиск строки в массиве строк 161

How to: Search Within a String 162

Поиск в строке 162

Arrays and Collections 163

Arrays 163

Массивы и коллекции 163

Массивы 163

How to: Declare an Array 167

Объявление массива 167

How to: Initialize an Array 168

Инициализация массива 168

How to: Pass Object Arrays to Methods 169

Передача массивов объектов в метод 169

Collections 170

170

Коллекции 170

How to: Iterate Through an Array 171

How to: Iterate Through a Collection 171

Итерация массива 171

Выполнение итерации коллекции 171

Enumerations 172

Перечисления 172

172

More Advanced Enumeration Techniques 173

Дополнительные способы перечисления 173

173

Errors and Exception Handling 174

Try and Catch 174

Обработка ошибок и исключений 174

Try и Catch 174

finally Blocks 175

Using Exception Handling 175

You can also cause your own exceptions using the throw keyword. 175

175

Блоки finally 175

How to: Catch an Exception 177

Перехват исключения 177

.NET Framework Conceptual Overview 178

Общие сведения об основных понятиях платформы .NET Framework 178

Features of the Common Language Runtime 180

Возможности среды CLR 180

.NET Framework Class Library 182

Библиотека классов платформы .NET Framework 182

Введение в язык c# и .Net Framework

C# — элегантный, строго типизированный объектно-ориентированный язык, предназначенный для разработки разнообразных безопасных и мощных приложений, выполняемых в среде .NET Frameworki. На языке C# можно разрабатывать обычные клиентские приложения Windows, веб-службы XML, распределенные компоненты, приложения типа “сервер-клиент”, приложения баз данных и многие-многие другие. В Visual C# 2008 имеется расширенный редактор кода, конструкторы с удобным пользовательским интерфейсом, встроенный отладчик и многие другие средства, призванные упростить разработку приложений на языке C# версии 3.0 и .NET Framework версии 3.5.

Примечание.

При чтении документации Visual C# подразумевается, что пользователь обладает знаниями об основных принципах программирования. Абсолютным новичкам можно посоветовать версию Visual C#, экспресс-выпуск, которая доступна в Интернете. Для приобретения практических навыков программирования можно также воспользоваться преимуществами книг и ресурсов в Интернете, посвященных языку C#.

Язык c#

Синтаксис C# очень выразителен, но прост в изучении. Все, кто знаком с языками C, C++ или Java с легкостью узнают синтаксис с фигурными скобками, характерный для языка C#. Разработчики, знающие любой из этих языков, как правило, смогут добиться эффективной работы с языком C# за очень короткое время. Синтаксис C# делает проще то, что было сложно в C++, и обеспечивает мощные возможности, такие как типы значений Nullable, перечисления, делегаты, лямбда-выражения и прямой доступ к памяти, чего нет в Java. C# поддерживает универсальные методы и типы, обеспечивая более высокий уровень безопасности и производительности, а также итераторы, позволяющие при реализации коллекций классов определять собственное поведение итерации, которое может легко использоваться в клиентском коде. В C# 3.0 выражения LINQ (Language-Integrated Query) делают строго-типизированный запрос первоклассной конструкцией языка.

Как объектно-ориентированный язык, C# поддерживает понятия инкапсуляции, наследования и полиморфизма. Все переменные и методы, включая метод Main – точку входа приложения – инкапсулируются в определения классов. Класс может наследовать непосредственно из одного родительного класса, но может реализовывать любое число интерфейсов. Для методов, которые переопределяют виртуальные методы в родительском классе, необходимо ключевое слово override, чтобы исключить случайное повторное определение. В языке C# структура похожа на облегченный класс: это тип, распределяемый в стеке, реализующий интерфейсы, но не поддерживающий наследование.

В дополнение к основным описанным объектно-ориентированным принципам, язык C# упрощает разработку компонентов программного обеспечения благодаря нескольким инновационным конструкциям языка, в число которых входят следующие:

  • Инкапсулированные подписи методов, называемые делегатами, которые поддерживают строго-типизированные уведомления о событиях.

  • Свойства, выступающие в роли методов доступа для закрытых переменных-членов.

  • Атрибуты с декларативными метаданными о типах во время выполнения.

  • Встроенные комментарии XML-документации.

  • LINQ (Language-Integrated Query), предлагающий встроенные возможности запросов в различных источниках данных.

Если потребуется обеспечить взаимодействие с другим программным обеспечением Windows, таким как объекты COM или собственные библиотеки DLL Win32, в языке C# можно использовать процесс, который называется "Interop." Процесс Interop позволяет программам на C# выполнять практически любые действия, которые может выполнять исходное приложение на C++. Язык C# поддерживает даже указатели и понятие "небезопасного" кода для тех случаев, когда прямой доступ к памяти имеет крайне важное значение.

Процесс построения C# по сравнению с C и C++ прост и является более гибким, чем в Java. Нет отдельных файлов заголовка, а методы и типы не требуется объявлять в определенном порядке. В исходном файле C# может быть определено любое число классов, структур, интерфейсов и событий.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]