Упражнение 4. Работа с DataGridView
В этом упражнении более подробно рассматривается элемент управления – сетка DataGridView.
1. Создайте новое WinForms-приложение (назовите его DataGridViewExample).
2. В меню Data выберите команду Add New Data Sources (Добавить новый источник данных) и запустите мастер настройки источника данных.
3. Настройте источник подключения к базе данных Northwind с набором данных: таблица Customers.
4. Перенесите узел Customers из окна Data Source на форму.
5. Откройте созданный конструктором обработчик события Load формы, посмотрите, что уже реализована загрузка данных в таблицу Customers и укажите код для создания нового столбца в DataTable:
DataColumn Location = new DataColumn("Location");
Location.Expression = "City + ',' + Country";
northwindDataSet.Customers.Columns.Add(Location);
6. Добавьте на форму две кнопки и установите следующие свойства:
e. Первая:
(Name) – AddColumnButton,
Text – Add Column
f. Вторая:
(Name) – DeleteColumnButton,
Text – Delete Column
7. Реализуйте в обработчике события Click кнопки Add Column добавление нового столбца в DataGridView:
DataGridViewTextBoxColumn LocationColumn = new DataGridViewTextBoxColumn();
LocationColumn.Name = "LocationColumn";
LocationColumn.HeaderText = "Location";
LocationColumn.DataPropertyName = "Location";
customersDataGridView.Columns.Add(LocationColumn);
8. Реализуйте в обработчике события Click кнопки Delete Column удаление столбца в DataGridView:
try
{
customersDataGridView.Columns.Remove("LocationColumn");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
9. Добавьте на форму еще две кнопки и установите следующие свойства:
|
|
a. Первая:
(Name) – GetClickedCellButton,
Text – Get Clicked Cell
b. Вторая:
(Name) – ApplyStyleButton,
Text – Apply Style
10. Добавьте на форму рядом с кнопкой Get Clicked Cell ЭУ Label.
11. Реализуйте в обработчике события Click кнопки Get Clicked Cell следующую функциональность:
a. Объявите переменную для хранения информации о выбранной ячейке:
string CurrentCellInfo;
b. Присвойте объявленной переменной содержимое ячейки:
CurrentCellInfo = customersDataGridView.CurrentCell.Value.ToString() + Environment.NewLine;
c. Добавьте к переменной информацию об имени столбца, а также индексах столбца и строки:
CurrentCellInfo += "Column: " +
customersDataGridView.CurrentCell.OwningColumn.DataPropertyName + Environment.NewLine;
CurrentCellInfo += "Column Index: " +
customersDataGridView.CurrentCell.ColumnIndex.ToString() + Environment.NewLine;
CurrentCellInfo += "Row Index: " +
customersDataGridView.CurrentCell.RowIndex.ToString() + Environment.NewLine;
d. Результирующую строку выведете в поле надписи формы:
label1.Text = CurrentCellInfo;
12. Добавьте обработчик события CellValidating компонента DataGridView и реализуйте проверку на соответствие правилам ввода, например, чтобы поле ContactName содержало некоторое значение:
if (customersDataGridView.Columns[e.ColumnIndex].DataPropertyName == "ContactName")
{
if (e.FormattedValue.ToString() == "")
{
|
|
customersDataGridView.Rows[e.RowIndex].ErrorText =
"ContactName is a required field";
e.Cancel = true;
}
else
customersDataGridView.Rows[e.RowIndex].ErrorText = "";
}
13. Реализуйте в обработчике события Click кнопки Apply Style чередующиеся строки со светло-серым фоном:
customersDataGridView.AlternatingRowsDefaultCellStyle.BackColor = Color.LightGray;
14. Запустите и протестируйте приложение. Добавьте столбец Location, проверьте добавление столбца. Удалите столбец. Получите информацию о ячейке с помощью кнопки Get Clicked Cell. Примените отображение чередующихся строк со светло-серым фоном.
Практическое занятие 6. Работа с XML в объектах DataSet
Объект DataSet модели ADO.NET изначально рассчитан на работу с XML. Содержимое DataSet можно загружать и сохранять в виде XML-документов. Кроме того, DataSet позволяет выделить информацию схемы (сведения о таблицах, столбцах и ограничениях) в файл XML-схемы. Для работы с данными XML объекты DataSet имеют несколько методов, которые рассматриваются в следующих упражнениях.
Дата добавления: 2019-02-26; просмотров: 207; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!