Разработка приложения Windows "Станция технического обслуживания автомобилей" с использованием Microsoft .NET

Программирование с использованием технологий Microsoft .NET. Разработка приложения "Станция технического обслуживания автомобилей": инфологическое, даталогическое проектирование базы данных. Информационное и программное обеспечение, логическая структура.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 03.07.2011
Размер файла 1,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

26

Размещено на http://www.allbest.ru/

Министерство образования и науки Российской Федерации

Государственное образовательное учреждение

Высшего профессионального образования

Северо-Кавказский государственный технический университет»

Кафедра информационных систем и технологий

Пояснительная записка

к курсовому проекту

по дисциплине

«Разработка Windows приложений»

на тему

Разработка приложения Windows «Станция технического обслуживания автомобилей»

Специальность 230200 «Информационные системы»

Автор проекта

А. Гололобов

Руководитель проекта

Е.И. Николаев

Ставрополь, 2011

Содержание

  • Введение
  • 1. Теоретические основы программирования с использованием технологий Microsoft .NET
  • 2. Разработка приложения «Станция технического обслуживания автомобилей»
    • 2.1 Инфологическое, даталогическое проектирование базы данных
    • 2.1.1 Перечень сущностей
    • 2.1.2 Перечень атрибутов
    • 2.1.3 Даталогическое проектирование таблиц
    • 2.2 Разработка интерфейса пользователя
    • 2.3 Разработка иерархии классов для работы с источниками данных
    • 3. Информационное и программное обеспечение
    • 3.1 Функциональное назначение
    • 3.2 Описание логической структуры
    • 3.2.1 Обобщенный алгоритм работы программы
    • 3.2.2 Объектно-ориентированная декомпозиция
    • 3.3 Описание входных и выходных данных
    • 3.4 Требование к техническому и программному обеспечению. Руководство пользователя, администратора
    • 3.4.1 Руководство пользователя
    • 3.4.2 Руководство администратора
  • Заключение
  • Список использованной литературы
  • Приложение 1
  • Приложение 2

Введение

C# -- объектно-ориентированный язык программирования. Разработан в 1998--2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как основной язык разработки приложений для платформы Microsoft .NET. Компилятор с C# входит в стандартную установку самой .NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств, вроде Visual Studio.

C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML.

Переняв многое от своих предшественников -- языков C++, Java, Delphi, Модула и Smalltalk -- С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++).

Одна из причин разработки нового языка компанией Microsoft - это создание компонентно-ориентированного языка для новой платформы .NET. Другие языки были созданы до появления платформы .NET, язык же C# создавался специально под эту платформу и не несет с собой груза совместимости с предыдущими версиями языков. Хотя это не означает, что для новой платформы это единственный язык.
Еще одна из причин разработки компанией Microsoft нового языка программирования - это создание альтернативы языку Java. Как известно, реализация Java у Microsoft не была лицензионно чистой - Microsoft в присущей ей манере внесла в свою реализацию много чего от себя. Компания Sun, владелица Java, подала на Microsoft в суд, и Microsoft этот суд проиграла. Тогда Microsoft решила вообще отказаться от Java, и создать свой Java-подобный язык, который и получил название C#.
Если перевести слова NET Runtime на русский язык, то мы получим что-то вроде «Среда выполнения». Именно вы этой среде и выполняется код, получаемый в результате компиляции программы написанной на C#. NET Runtime основын не на ассемблере (т. е. не на коде, родном для процессора), а на некотором промежуточном коде. Отдаленно он напоминает виртуальную Java машину. Только если в случае Java у нас был только один язык для виртуальной машины, то для NET Runtime таких языков может быть несколько. Теоретически программа для среды NET Runtime может выполняться под любой операционной системой, в которой NET Runtime установлена. Но на практике пока единственная платформа для этого - это Windows.

В курсовом проекте описывается программный продукт, который взаимодействует с внешней базой данных, состоящей из связанных таблиц. База данных создана в среде Microsoft Access и поддерживает все виды целостности. Взаимодействие между программой и базой данных осуществляется посредством технологии ADO.NET. При работе в рамках несвязного уровня ADO.NET используются объекты соединения, команд и адаптеры данных. Данные из базы данных получают с помощью адаптера данных. Для перемещения данных между клиентским приложением и источником данных объекты адаптера используют объекты DataSet.

1. Теоретические основы программирования с использованием технологий Microsoft .NET

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

· Обеспечение согласованной объектно-ориентированной среды программирования для локального сохранения и выполнения объектного кода, для локального выполнения кода, распределенного в Интернете, либо для удаленного выполнения.

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

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

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

· Обеспечение единых принципов работы разработчиков для разных типов приложений, таких как приложения Windows и веб-приложения.

· Разработка взаимодействия на основе промышленных стандартов, которое обеспечит интеграцию кода платформы .NET Framework с любым другим кодом.

Двумя основными компонентами платформы .NET Framework являются общеязыковая среда выполнения (CLR) и библиотека классов .NET Framework. Основой платформы .NET Framework является среда CLR. Среду выполнения можно считать агентом, который управляет кодом во время выполнения и предоставляет основные службы, такие как управление памятью, управление потоками и удаленное взаимодействие. При этом накладываются условия строгой типизации и другие виды проверки точности кода, обеспечивающие безопасность и надежность. Фактически основной задачей среды выполнения является управление кодом. Код, который обращается к среде выполнения, называют управляемым кодом, а код, который не обращается к среде выполнения, называют неуправляемым кодом. Другой основной компонент платформы .NET Framework, библиотека классов, представляет полную объектно-ориентированную коллекцию типов, которые применяются для разработки приложений, начиная от обычных, запускаемых из командной строки или с графическим интерфейсом пользователя, и заканчивая приложениями, использующими последние технологические возможности ASP.NET, такие как Web Forms и веб-службы XML.

Платформа .NET Framework может размещаться неуправляемыми компонентами, которые загружают среду CLR в собственные процессы и запускают выполнение управляемого кода, создавая таким образом программную среду, позволяющую использовать средства как управляемого, так и неуправляемого выполнения. Платформа .NET Framework не только предоставляет несколько базовых сред выполнения, но также поддерживает разработку базовых сред выполнения независимыми производителями.

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

Обозреватель Internet Explorer может служить примером неуправляемого приложения, размещающего среду выполнения (в виде расширений типов MIME). Размещение среды выполнения в обозревателе Internet Explorer позволяет внедрять управляемые компоненты или элементы управления Windows Forms в HTML-документы. Такое размещение среды делает возможным выполнение управляемого мобильного кода (аналогичного элементам управления Microsoft® ActiveX®), но с существенными преимуществами управляемого кода, такими как выполнение в условиях неполного доверия и изолированное хранение файлов.

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

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

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

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

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

Хотя среда выполнения разрабатывалась для будущего программного обеспечения, она также поддерживает сегодняшнее и вчерашнее программное обеспечение. Взаимодействие управляемого и неуправляемого кодов позволяет разработчикам использовать необходимые компоненты COM и библиотеки DLL.

Среда выполнения разработана для повышения производительности. Хотя общеязыковая среда выполнения предоставляет многие стандартные службы времени выполнения, управляемый код никогда не интерпретируется. Средство компиляции по требованию (JIT) позволяет всему управляемому коду выполняться на машинном языке компьютера. Между тем диспетчер памяти устраняет возможность фрагментации памяти и увеличивает объем адресуемой памяти для дополнительного повышения производительности.

И наконец, среда выполнения может размещаться в высокопроизводительных серверных приложениях, таких как Microsoft® SQL Server™ и Internet Information Services (IIS). Такая инфраструктура позволяет использовать управляемый код для написания собственной логики программ, пользуясь при этом высочайшей производительностью лучших производственных серверов, которые поддерживают размещение среды выполнения.

Библиотека классов платформы .NET Framework представляет собой коллекцию типов, которые тесно интегрируются со средой CLR. Библиотека классов является объектно-ориентированной; предоставляя типы, из которых управляемый код пользователя может наследовать функции. Это не только упрощает работу с типами .NET Framework, но также уменьшает время, затрачиваемое на изучение новых средств платформы .NET Framework. Кроме того, компоненты независимых производителей можно легко объединять с классами платформы .NET Framework.

Например, в классах коллекций .NET Framework реализуется набор интерфейсов, которые можно использовать для разработки пользовательских классов коллекций. Пользовательские классы коллекций будут без затруднений объединяться с классами .NET Framework.

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

· консольные приложения;

· приложения с графическим интерфейсом пользователя Windows (Windows Forms);

· приложения Windows Presentation Foundation (WPF);.

· приложения ASP.NET;

· веб-службы;

· службы Windows;

· сервисноориентированные приложения с помощью Windows Communication Foundation (WCF);

· приложения поддерживающие бизнес-процессы Windows Workflow Foundation (WF).

Например, классы Windows Forms представляют собой полный набор типов, существенно упрощающих разработку графических интерфейсов пользователя Windows. При написании приложения форм ASP.NET можно использовать классы Web Forms.

2. Разработка приложения «Станция технического обслуживания автомобилей»

2.1 Инфологическое, даталогическое проектирование базы данных

2.1.1 Перечень сущностей

Инфологическая модель БД - описание семантики предметной области в модели БД без ориентации на используемые в дальнейшем программные и технические средства.

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

Сущность (объектное множество, таблица) - это собирательное понятие, абстракция реально существующего процесса, объекта или явления, о котором необходимо хранить информацию.

Исходя из предметной области, правил теории баз данных и общих соображений по эффективной организации систем следует, что нужно создать сущности АВТОМОБИЛИ, ВЛАДЕЛЬЦЫ, РАБОТНИКИ, НЕИСПРАВНОСТИ.

Таким образом, база данных состоит:

- АВТОМОБИЛИ;

- РЕМОНТНЫЕ РАБОТЫ;

- ВЛАДЕЛЬЦЫ;

- РАБОТНИКИ;

- ОТРЕМОНТИРОВАНО (Номер работы, личный номер работника).

Сущность ОТРЕМОНТИРОВАНО реализует связь типа «многие-ко-многим» между сущностями РАБОТНИКИ и РЕМОНТНЫЕ РАБОТЫ.

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

2.1.2 Перечень атрибутов

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

1. Данные для работы с автомобилями - № госрегистрации, дата выпуска, производитель, название модели;

2. Данные о владельцах автомобилей - ФИО, паспортные данные, адрес прописки;

3. Данные о ремонтных работах - описание неисправности, дата устранения, работник ее устранивший;

4. Данные о работниках - ФИО работника, его личный номер;

5. Данные об отремонтированных автомобилях - Номер работы, личный номер работника;

2.1.3 Даталогическое проектирование таблиц

В соответствии с описанными выше сущностями и их атрибутами были спроектированы следующие таблицы в базе данных .

Таблица 2.1

Автомобили

Имя атрибута

Тип данных

Описание

Компания-производитель

Текстовый

производитель автомобиля

Модель

Текстовый

Модель автомобиля

№ госрегистрации

Текстовый

№ госрегистрации

№ паспорта владельца

Текстовый

Номер паспорта владельца

Дата выпуска

Дата/время

Дата выпуска автомобиля

Таблица 2.2

Данные о владельцах автомобиля

Имя атрибута

Тип данных

Описание

ФИО

Текстовый

Фамилия, имя, отчество владельца

Адрес

Текстовый

Адрес владельца автомобиля

№ паспорта

Текстовый

№ паспорта владельца

Таблица 2.3

Данные о ремонтных работах

Имя атрибута

Тип данных

Описание

Код работы

Счетчик

Идентификатор работы

Описание работы

Текстовый

Описание работы

Дата устранения

Дата/время

Дата завершения работы

№ госрегистрации

Текстовый

№ госрегистрации автомобиля

Таблица 2.4

Данные о работниках

Имя атрибута

Тип данных

Описание

ФИО работника

Текстовый

Фамилия, имя, отчество работника

Личный №

Числовой

Номер работника

Таблица 2.5

Данные об отремонтированных автомобилях

Имя атрибута

Тип данных

Описание

Код работы

Счётчик

идентификатор работы

Личный № работника

Числовой

Номер работника

Схема данных (связи таблиц) представлена на рисунке 2.1

Рисунок 2.1 - Схема данных

2.2 Разработка интерфейса пользователя

Пользовательский интерфейс программы выполнен в виде однодокументного приложения. При запуске программа выдает окно с запросом пароля (рисунок 2.2) (см. приложение 2).

Рисунок 2.2 - Окно идентификации.

После идентификации открывается главное окно приложения (см. рис.2.3).

Рисунок 2.3 - Главное окно программы

Центральным элементом окна является элемент TabControl, который имеет 5 вкладок, имеющей в свою очередь по одной таблице с данными (DataGridView1, DataGridView2, DataGridView3, DataGridView4, DataGridView5). В них входят таблицы с данными об автомобилях, владельцах, ремонтных работах, работниках и отремонтированных автомобилях соответственно.

На главном окне расположены: главное меню программы (MenuStrip), вкладки (TabControl), панель инструментов для управления данными (BindingNavigator), строка состояния (StatusStrip).

В каждой вкладке данные загружаются в таблицу через компоненты BindingSource. Каждый компонент BindingNavigator настроен на соответствующий BindingSource (автомобили BindingSource, владельцы BindingSource, ремонтные_работы BindingSource, работники BindingSource, Отремонтировано BindingSource).

В главном меню программы расположена кнопка: Сохранить все изменения.

Поиск данных на главной форме реализован с помощью компонентов textbox и кнопок button. Для поиска данных необходимо ввести в одном из textBox соответствующее значение (подсказка вверху, например «Фильтрация по любым данным»), после чего курсор в таблице перейдет на данное место или появится MessageBox со значениями, удовлетворяющими введенному.

На компоненте BindingNavigator оставлены те же значения, что и установлены по умолчанию: перемещение по таблице с помощью синих стрелочек. Перемещение выполняется по всем трем таблицам.

При нажатии на пункт «Сохранить все» появится MessageBox с вопросом о сохранении. В данном случае сохраняются все таблицы приложения.

Рисунок 2.4 - Фильтр по заданному полю

При сохранении появляется MessageBox с вопросом о сохранении (рисунок 2.5). При нажатии на кнопку OK все внесенные данные в таблицу сохранятся. При нажатии Cancel сохранение будет отменено.

Рисунок 2.5 - MessageBox с вопросом о сохранении внесенных данных

Функции всех вкладок идентичны.

приложение microsoft база автомобиль

2.3 Разработка иерархии классов для работы с источниками данных

Приложение разработано с использованием технологии ADO.NET. Подключиться к базе данных можно с помощью Settings.settings в Solution Explorer при разработке приложения. При указании пути к базе данных появляется окно «Connection Properties»

Для выполнения любых операций с базой данных в приложении используется компонент TableAdapter. В компоненте есть параметр Connection.

Для работы с объектами базы данными был разработан класс Dataset. Данный класс полностью был создан с помощью мастера. Объекты типа TableAdapter были созданы автоматически при перетаскивании из источника данных (рисунок 2.6).

Рисунок 2.6 - Класс Dataset

3. Информационное и программное обеспечение

3.1 Функциональное назначение

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

3.2 Описание логической структуры

3.2.1 Обобщенный алгоритм работы программы

При запуске программа предлагает ввести пароль к базе данных (рисунок 3.1).

Рисунок 3.1 - Ввод пароля при входе в программу

Программа выполняет проверку подключения. Если проверка подключения не выполняется по каким-либо причинам, программа выдаст пользователю сообщение с текстом ошибки (рисунок 3.2).

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

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

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

Рисунок 3.2 - Ошибка подключения

3.2.2 Объектно-ориентированная декомпозиция

В таблицах 3.1-3.4 описаны основные элементы кода программы.

Таблица 3.1

Класс Form1

Член класса

Способа доступа

Назначение

Назначение формальных параметров

void button1_Click

закрытый

Нажатие Enter при вводе пароля

Таблица 3.2

Класс Form2

Член класса

Способа доступа

Назначение

Назначение формальных параметров

void Form2_Load

закрытый

Загрузка данных из базы

private void сохранитьВсеИзмененияToolStripMenuItem_Click

закрытый

Сохранить изменения во всех таблицах

void Filter_Click

закрытый

Фильтрация по полю Модель

void Poisk_Click

Поиск по любым введенным данным

void Pokazat_Click

Запрос по полю дата выпуска

void Iskat_kod_rab_Click

закрытый

Фильтрация по полю код работы

void Iskat_lichn_nomer_Click

закрытый

Фильтрация по полю Личный номер работника

3.3 Описание входных и выходных данных

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

Все операции по вводу и редактированию данных фиксируются в базе данных. Когда пользователь нажимает кнопку «Сохранить» на главное форме, происходит фиксация изменений базы данных. Все изменения записываются в файл базы.

3.4 Требование к техническому и программному обеспечению. Руководство пользователя, администратора

Для работы приложения необходим персональный компьютер со следующими характеристиками: процессор Intel Pentium с тактовой частотой 800 МГц и выше, оперативная память - не менее 64 Мбайт, свободное дисковое пространство - не менее 500 Мбайт, монитор типа Super VGA (число цветов - 256) с диагональю не менее 15?. Программное обеспечение: операционная система WINDOWS 2000/XP и выше, Microsoft Office 2003 (с компонентами Access и Excel) и выше, Microsoft Framework 3.5 и выше.

3.4.1 Руководство пользователя

Для запуска программы запустите файл STO.exe. Программа предложит ввести пароль к базе данных, введите «123».

Указать путь в базе данных.

Программа имеет интуитивно понятный интерфейс.

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

Вводить и редактировать данные можно прямо в таблице.

Работа со всеми таблицами идентична.

3.4.2 Руководство администратора

Функции администрирования данного программного продукта осуществляются в установке программы, установке и смена пароля к базе данных, своевременное архивное копирование базы данных.

Перед установкой программы необходимо убедиться в соответствии требований к программному и аппаратному обеспечению.

При установке программы необходимо указать путь к базе данных.

Заключение

В ходе выполнения курсового проекта было создано Windows-приложение, позволяющее вести учет поставки и реализации ювелирных изделий.

Приложение может быть использовано для небольших станций технического обслуживания автомобилей. Для более серьезных компаний необходимо создавать более сложные программные комплексы на основе клиент-серверной архитектуры.

В рамках курсового проекта были выполнены следующие задачи:

- изучение возможностей интегрированной среды разработки Microsoft Visual Studio;

- получение практических навыков по использованию технологий .NET: визуальных компонент, новых типов данных;

- получение навыков программирования на языке C#;

- получение навыков программирования приложений с использованием технологий доступа к данным ADO.NET.

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

Цель данного курсового проекта, получение практических навыков по разработке программ для операционных систем семейства Windows с применением технологий .NET, была выполнена.

Список использованной литературы

1. Нортроп, Т. Основы разработки приложений на платформе Microsoft .NET Framework. Учебный курс Microsoft. Перевод с англ./ Т. Нортроп, Ш. Уилдермьюс, Б. Райан. - М.: «Русская редакция», 2007. - 864 с.

2. Шилдт, Г. C#, учебный курс. / Г. Шилдт. - СПб.: Питер, 2003. - 512 с.

3. Робинсон, С. C# для профессионалов. Том 1. / С. Робинсон, О. Корнес, Д. Глин, Б. Харвей. - М.:Лори, 2003. - 1002 с.

4. Робинсон, С. C# для профессионалов. Том 2. / С. Робинсон, О. Корнес, Д. Глин, Б. Харвей. - М.:Лори, 2003. - 998 с.

5. Троелсен, Э. Язык программирования C# 2005 и платформа .NET 2.0, 3-е издание.: Пер с англ. / Э. Троелсен. - М.: ООО «И.Д. Вильямс», 2007. - 1168 с.

6. Ватсон, К. C#. / К. Ватсон, М. Беллиназо, О. Корнс, Д. Эспиноза. - М.:Лори, 2005. - 863 с.

7. ГОСТ 2.105-95 ЕСКД. Общие требования к текстовым документам.

8. ГОСТ 2.106-68 ЕСКД. Текстовые документы.

9. Левитин, А.В. Алгоритмы. Введение в разработку и анализ./ А.В. Левитин. - М.: Вильямс, 2006 - 576 с.

10. Голицына, О.Л., Основы алгоритмизации и программирования (2-е

издание)./ И.И. Попов, О.Л. Голицына - М. Инфа-М, 2006 - 432 с.

11. Петгольц, Ч. Программирование для Microsoft Windows на C#. В 2-х томах. Том 1. Пер. с англ./ Ч. Петгольц - М.: Издательско-торговый дом «Русская редакция», 2002. - 576 с.

12. http://www.intuit.ru/department/se/tppobj/2/3.html

13. http://msdn.microsoft.com/ru-ru/netframework/default.aspx

Приложение 1

Диаграмма классов Windows приложения

Приложение 2

Листинг программы

Код программного модуля Form1.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace STO

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

if (this.textBox1.Text == "123")

{

Form2 ob = new Form2();

ob.Show();

}

if (this.textBox1.Text != "123")

{

MessageBox.Show("Введенный Вами пароль неверен", "Неверный пароль!", MessageBoxButtons.OK, MessageBoxIcon.Warning);

}

}

}

}

Код программного модуля Form2.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace STO

{

public partial class Form2 : Form

{

public Form2()

{

InitializeComponent();

}

private void Form2_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "baseDataSet.Отремонтировано". При необходимости она может быть перемещена или удалена.

this.отремонтированоTableAdapter.Fill(this.baseDataSet.Отремонтировано);

// TODO: данная строка кода позволяет загрузить данные в таблицу "baseDataSet.Работники". При необходимости она может быть перемещена или удалена.

this.работникиTableAdapter.Fill(this.baseDataSet.Работники);

// TODO: данная строка кода позволяет загрузить данные в таблицу "baseDataSet.Ремонтные_работы". При необходимости она может быть перемещена или удалена.

this.ремонтные_работыTableAdapter.Fill(this.baseDataSet.Ремонтные_работы);

// TODO: данная строка кода позволяет загрузить данные в таблицу "baseDataSet.Владельцы". При необходимости она может быть перемещена или удалена.

this.владельцыTableAdapter.Fill(this.baseDataSet.Владельцы);

// TODO: данная строка кода позволяет загрузить данные в таблицу "baseDataSet.Автомобили". При необходимости она может быть перемещена или удалена.

this.автомобилиTableAdapter.Fill(this.baseDataSet.Автомобили);

}

private void сохранитьВсеИзмененияToolStripMenuItem_Click(object sender, EventArgs e)

{

if (MessageBox.Show("Сохранить изменения?", "Сохранение", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)

{

автомобилиTableAdapter.Update(baseDataSet.Автомобили);

владельцыTableAdapter.Update(baseDataSet.Владельцы);

ремонтные_работыTableAdapter.Update(baseDataSet.Ремонтные_работы

работникиTableAdapter.Update(baseDataSet.Работники);

отремонтированоTableAdapter.Update(baseDataSet.Отремонтировано);

}

else

{

baseDataSet.Автомобили.RejectChanges();

baseDataSet.Владельцы.RejectChanges();

baseDataSet.Ремонтные_работы.RejectChanges();

baseDataSet.Работники.RejectChanges();

baseDataSet.Отремонтировано.RejectChanges();

}

}

private void Filter_Click(object sender, EventArgs e)

{

BindingSource bs = new BindingSource();

bs.DataSource = автомобилиBindingSource;

bs.Filter = "Модель like '*" + textBox1.Text + "*'";

}

private void Poisk_Click(object sender, EventArgs e)

{

for (int i = 0; i < dataGridView1.RowCount; i++)

{

dataGridView1.Rows[i].Selected = false;

for (int j = 0; j < dataGridView1.ColumnCount; j++)

if (dataGridView1.Rows[i].Cells[j].Value != null)

if (dataGridView1.Rows[i].Cells[j].Value.ToString().Contains(textBox2.Text))

{

dataGridView1.Rows[i].Selected = true;

break;

}

}

}

private void Pokazat_Click(object sender, EventArgs e)

{

DataRow[] properIDs;

if (checkBox2.Checked)

{

checkBox1.Visible = false;

string newFilterStr = "Дата выпуска >= " + textBox3.Text + "";

properIDs = baseDataSet.Автомобили.Select(newFilterStr);

string strIDs = null;

for (int i = 0; i < properIDs.Length; i++)

{

DataRow temp = properIDs[i];

strIDs += "Автомобиль " + temp["Дата выпуска"]

+ " старше введённого Вами года выпуска "

+ temp["Дата выпуска"] + "\n";

}

MessageBox.Show(strIDs, "Результат поиска");

}

else checkBox1.Visible = true;

if (checkBox1.Checked)

{

checkBox2.Visible = false;

string newFilterStr = "Дата выпуска <= " + textBox3.Text + "";

properIDs = baseDataSet.Автомобили.Select(newFilterStr);

string strIDs = null;

for (int i = 0; i < properIDs.Length; i++)

{

DataRow temp = properIDs[i];

strIDs += "Автомобиль " + temp["Дата выпуска"]

+ " не страше введённого Вами года выпуска "

+ temp["Дата выпуска"] + "\n";

}

MessageBox.Show(strIDs, "Результат поиска");

}

else checkBox2.Visible = true;

}

private void Iskat_kod_rab_Click(object sender, EventArgs e)

{

BindingSource bs = new BindingSource();

bs.DataSource = ремонтныеРаботыBindingSource;

bs.Filter = "Код работы like'*" + textBox4.Text + "*'";

}

private void Iskat_lichn_nomer_Click(object sender, EventArgs e)

{

if (radioButton1.Checked)

{

BindingSource bs = new BindingSource();

bs.DataSource = работникиBindingSource;

bs.Filter = "Личный номер >= " + textBox5.Text + "";

}

if (radioButton2.Checked)

{

BindingSource bs = new BindingSource();

bs.DataSource = работникиBindingSource;

bs.Filter = "Личный номер <= " + textBox5.Text + "";

}

}

}

}

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.