
Среда программирования: Visual C# .NET 2017
Название работы: ЛР2. Пользовательский интерфейс
Вид работы: Лабораторная работа
Тематика работы: Прочие
Объем программы: 6 (по десятибалльной шкале)
Уровень сложности: 8 (по десятибалльной шкале)
Разработчик (автор):
Программист сайта kursovik.com
(письмо автору)
Данная работа написана ЧЕЛОВЕКОМ без использования ИИ
Ключевые слова: Пользовательский интерфейс C#, механизм сериализации, ООП, объектно-ориентированное программирование, объекты, классы, методы, проект WinForms, View, Model-View, бизнес-логика, элемент GridControl, заголовок GroupBox, назначение GridControl, список List сущностей, дочерние классы, виды геометрических фигур, Кнопка Remove Object, форма создания нового объекта, размер стороны геометрической фигуры, обработка исключений
Функции программы:
Лабораторная работа 2.
Разработать программу на C# в соответствии с заданием:
Задание на лабораторную работу
1. Создайте в решении новый проект WinForms (WinForms Application Project) и задайте ему соответствующее имя. Если проект бизнес-логики назван как Model, для проекта пользовательского интерфейса логично дать название View. Данный подход в проектировании архитектуры приложения называется Model-View: когда бизнес-логика и пользовательский интерфейс разделены на разные сборки. В дальнейшем такой подход облегчает ориентирование в рамках проекта. Обратите внимание, что теперь данный проект должен быть стартовым, для этого установите его запускаемым проектом по умолчанию.
2. Добавьте в проект View новую форму. Название формы должно отражать назначение формы и оканчиваться словом Form. Как и имена других классов, имя формы оформляется в стиле Pascal.
3. Добавьте на форму элемент GridControl из панели инструментов. Для повышения удобства пользовательского интерфейса лучше сначала разместить на форме элемент GroupBox, в который поместить GridControl. Это позволит поместить в заголовок GroupBox фразу, поясняющую назначение GridControl. Под GridControl разместите две кнопки Button. Назовите кнопки Add Object и Remove Object, где вместо Object подставьте название того объекта, который реализован в вашей бизнес-логике.
4. Создайте внутри формы поле, хранящее список (List) сущностей,
соответствующих вашему варианту. Список должен иметь возможность хранения в себе всех дочерних классов вашей сущности (все виды геометрических фигур, все типы работников, все виды скидок и т. д.).
5. Необходимо реализовать следующую логику формы: GridControl должен отображать (без возможности редактирования) все объекты созданного списка. Кнопка Add Object должна добавлять новый объект в GridControl и в список объектов. Кнопка Remove Object должна удалять выбранный в GridControl объект и удалять его из списка объектов.
6. Для добавления новых объектов в программу нужно разработать специальную форму, которая вызывалась бы по нажатию клавиши Add Object. В форме должна присутствовать возможность заполнения полей, общих для всех дочерних классов, выбор в виде ComboBox или RadioButton типа объекта и, в зависимости от типа объекта, должна появляться возможность заполнения полей данного типа объекта. Например, если создается новый работник, то в форме обязательно есть поля ФИО и даты принятия на работу, но в зависимости от RadioButton с типом оплаты должны появляться поля либо почасовой оплаты, либо оплаты по ставке.
7. На форме создания нового объекта должны присутствовать кнопки Ok и Cancel. Если пользователь нажмет кнопку Ok — в главной форме должен быть добавлен созданный объект. Если пользователь нажмет Cancel — должна быть выполнена отмена добавления.
8. Форма создания нового объекта должна учитывать ограничения на значения полей объекта (например, неотрицательный размер стороны геометрической фигуры). Фактически, здесь должна производиться обработка исключений при попытке ввода неправильных значений.
9. Особое внимание обратите на визуальную аккуратность создаваемых вами пользовательских интерфейсов. Старайтесь выравнивать элементы по левому краю относительно друг друга, делать одинаковые отступы между элементами, правильно подписывать элементы, кнопки и заголовки. Грамотно рассчитывайте размеры элементов — если в TextBox должно вводиться целое число со значением до 100, не имеет смысла делать его длиннее 50 пикселей. Также поля для фамилии должны быть подходящего размера, чтобы корректно отображать обычную фамилию, — не слишком длинные, но и не слишком короткие. Аккуратность и удобство пользовательского интерфейса может стать решающим фактором в выборе именно вашей программы конечным пользователем.
10. При тестировании и отладке программы не очень удобно вручную добавлять новые объекты — необходимость каждый раз вводить данные для 10 объектов может сильно пошатнуть психическое состояние разработчика (или вашего преподавателя). Чтобы облегчить тестирование программы, а значит, и собственную разработку, добавьте на форму создания нового объекта кнопку Create Random Data. По нажатию данной кнопки все поля будут заполняться случайными правильными данными для объекта. Пользователю останется только нажать кнопку Ok для добавления нового объекта на главную форму.
11. Кнопка Create Random Data является отладочной, и в версии, которая будет поставляться конечному пользователю, этой кнопки быть не должно — не будет же бухгалтерия создавать «случайных» работников со «случайными» зарплатами! Удалять же и заново создавать эту кнопку при необходимости нового установщика опять же не очень удобно — вы можете просто забыть это сделать. Используйте механизм условной компиляции.
12. Добавьте форму, на которой можно будет провести поиск объекта по каждому из полей общих для всех дочерних классов. Помните, что результатом поиска может быть не один объект. Добавьте на главную форму кнопку для вызова формы поиска.
13. Добавьте возможность сохранения и загрузки введенных пользователем данных, используя любой механизм сериализации, на ваше усмотрение. Сохранять данные необходимо в файл с расширением, которое будет характерно только для вашей программы (не надо использовать известные форматы, например *.doc, *.txt или *.xml).
Описание (отчет): Нет, но можно заказать его написание
Пояснения к компиляции и запуску программы:
Для работы с программой нужно запустить файл "View.exe".
Пояснения к запуску программы:
Для работы с программой нужно запустить файл "View.exe".
исходники
Model
v16
Server
sqlite3
db
storage
Model
Ball
bin
Debug
Model
Model
Release
FigureBase
GeometricalFigureBase
IFigure
IGeometricalFigure
Model
obj
Debug
DesignTimeResolveAssemblyReferencesInput
Model.csproj.CoreCompileInputs
Model.csproj.FileListAbsolute
Model.csprojAssemblyReference
Model
Model
TempPE
Parallelepiped
Properties
AssemblyInfo
RightTriangularPyramid
TriangularPyramid
Model
Model.sln.DotSettings
View
App
bin
Debug
1
Model
Model
View
View.exe
View
Release
Forms
AddElementFrm
AddElementFrm.Designer
AddElementFrm
MainForm
MainForm.Designer
MainForm
SearchForm
SearchForm.Designer
SearchForm
Serializable
obj
Debug
DesignTimeResolveAssemblyReferences
DesignTimeResolveAssemblyReferencesInput
TempPE
Properties.Resources.Designer.cs
View.csproj
View.csproj.FileListAbsolute
View.csproj.GenerateResource
View.csprojAssemblyReference
View
View.Forms.AddElementFrm
View.Forms.SearchForm
View.MainForm
View
View.Properties.Resources
Program
Properties
AssemblyInfo
Resources.Designer
Resources
Settings.Designer
Settings
Resources
1510183-geometry
View|
Стоимость ИСХОДНОГО ТЕКСТА программы составляет 1400 руб РФ Продажа каждой работы строго учитывается, у каждой работы есть своя история продаж. |