Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Настройка свойств столбцов в DataGridView



Если в меню действий выбрать пункт " Edit Columns", то появляется окно, где можно добавлять, удалять и редактировать столбцы. Для этого в списке столбцов левой части окна выбираем столбец, а в правой - настраиваем его свойства. Наиболее часто настраиваются следующие свойства:

1. Name - имя столбца;

2. AutoSizeMode - подгонка ширины столбца по его содержимое;

3. ColumnType - определяет внешний вид ячеек столбца (какой объект для отображения информации находится в ячейках столбца);

4. DataPropertyName - имя, отображающего в столбце поля;

5. Frozen - фиксация столбца (столбец не передвигается при прокручивании таблицы);

6. HeaderText - текст заголовка столбца;

7. Width - ширина поля;

8. MaxInputLength - максимально вводимая длина текста;

9. MinimumWidth - минимальная ширина столбца;

10. ReadOnly - блокировка столбца для редактирования данных;

11. Resizable - разрешает менять ширину столбца;

12. SortMode - сортировка данных в таблице по этому столбцу;

13. ToolTipText - всплывающая подсказка для столбца;

14. Visible - делает столбец невидимым.

Замечание: Для добавления новых столбцов в окне " Edit Columns" необходимо нажать кнопку Add, а для удаления кнопку Remove.

Замечание: Если необходимо настроить внешний вид всех ячеек таблицы, то для этого необходимо выделить объект DataGridView и на панели свойств зайти в свойство DefaultCellStyle. Появится окно со свойствами всех ячеек таблицы.

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

DataGridView.Sort(< Имя столбца>, < Порядок сортировки> )

 

где DataGridView - это имя объекта, < Имя столбца> - это имя столбца (свойство Name ) по которому происходит сортировка записей в таблице, параметр < Порядок сортировки> определяет порядок сортировки и может принимать два значения:

  • System.ComponentModel.ListSortDirection.Ascending - сортировка по возрастанию;
  • System.ComponentModel.ListSortDirection.Descending - сортировка по убыванию.

Замечание: Доступ к отдельным ячейкам таблицы можно получить через подобъект Item. Обращение к нему осуществляется следующим образом:

DataGridView.Item(i, j).< Свойство>

 

Здесь DataGridView - это имя объекта, i - горизонтальная координата ячейки, а j - вертикальная, < Свойство> - это настраиваемое свойство ячейки.

Пример: В верхнюю левую ячейку таблицы записать слово " Привет" и сделать цвет текста в ячейке красным.

DataGridView.Item(0, 0).Value = " Привет"

DataGridView.Item(0, 0).Style.ForeColor = Color.Red

 

Здесь DataGridView - это имя объекта, свойство Value определяет содержимое ячейки таблицы, свойство Style.ForeColor определяет цвет текста в ячейке. Нумерация столбцов и строк в таблице начинается с нуля.

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

Рассмотрим создание табличной формы на примере формы, отображающей таблицу " Студенты". Добавьте в проект новую форму и на нее поместите следующие объекты:

  • четыре надписи ( Label ),
  • пять кнопок ( Button ),
  • выпадающий список ( ComboBox ),
  • текстовое поле ввода ( TextBox ),
  • группирующую рамку ( GroupBox ),
  • список ( ListBox ),
  • два переключателя ( RadioButton ).

Расположите объекты как показано на рис. 1.

Рис. 1.

Замечание: Для создания объекта группирующая рамка используется кнопка ### на панели объектов ( Toolbox ), а для создания переключателя - кнопка ###.

Добавим на форму таблицу для отображения данных ( DataGridView ) из таблицы " Студенты". Для этого на панели " Источники данных" (Data Sources), нажмите кнопку

 

расположенную справа от таблицы " Студенты". В появившемся списке объектов для отображения всей таблицы выберите " DataGridView" (рис. 2).

Рис. 2.

Перетащите таблицу " Студенты" из панели " Источники данных" на форму. Форма примет следующий вид (рис. 3):

Рис. 3.

Обратите внимание на то, что на форме появилась таблица для отображения данных, подключенная к таблице " Студенты". Также появились объекты связи и панель навигации (рис. 4).

Рис. 4.

Теперь перейдем к настройке свойств объектов. Начнем с настройки свойств формы. Задайте свойства формы следующим образом:

  • FormBorderStyle (Стиль границы формы): Fixed3D;
  • MaximizeBox (Кнопка развертывания формы во весь экран): False;
  • MinimizeBox (Кнопка свертывания формы на панель задач): False;
  • Text (Текст надписи в заголовке формы): Таблица " Студенты" (Табличный вид).

Задайте свойства надписей ( Label1, Label2, Label3 и Label4 ) как:

  • AutoSize (Авторазмер): False;
  • Text (Текст надписи): " Таблица " Студенты" (Табличный вид)", " Поле для сортировки", " ФИО: " и " Критерий" (Соответственно для Label1, Label2, Label3 и Label4).

Для надписи Label1 задайте:

  • Font (Шрифт): Microsoft Sans Serif, размер 14;
  • ForeColor (Цвет текста): Темно синий;
  • TextAlign (Выравнивание текста): MiddleCenter.

Задайте надписи на кнопках как: " Сортировать", " Фильтровать", " Показать все", " Найти" и " Закрыть" (Соответственно для кнопок Button1, Button2, Button3, Button4 и Button5 ). Для того чтобы нельзя было произвести сортировку не выбрав поля изначально заблокируем кнопку " Сортировать" (Button1).

У группирующей рамки задайте заголовок (Свойство Text ) равным " Сортировка". У переключателей (Объекты RadioButton1 и RadioButton2 ) задайте надписи как " Сортировка по возрастанию" и " Сортировка по убыванию", а у переключателя " Сортировка по возрастанию" (RadioButton1) задайте свойство Checked (Включен) равное True (Истина).

Заполните список ( ListBox1 ) значениями, представленными на рис. 5, а затем нажмите кнопку " Ok".

Рис. 5.

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

 

расположенной в верхнем правом углу таблицы. В меню действий выберите пункт " Edit columns…" (рис. 6).

Рис. 6.

Появится окно настройки свойств полей таблицы " Edit Columns" (рис. 7).

Рис. 7.

В окне " Edit Columns" из списка полей удалите поля " Код студента" и " Код специальности", выделив их и нажав кнопку " Remove" (Удалить). Список полей примет вид показанный на рис. 7. Для закрытия окна редактирования полей, и сохранения изменений нажмите кнопку " Ok".

Настроим заполнение выпадающего списка именами студентов из таблицы студенты. Отобразите меню действий выпадающего списка. Включите опцию " Use Data Bound Items". Установите параметр " Data Source" равным " Other Data Sources\Project Data Sources\StudentsDataSet\Студенты", а параметр " Display Member" равным " ФИО". Остальные параметры оставьте без изменений (рис. 8).

Рис. 8.

Закройте окно действий выпадающего списка. На панели невидимых объектов появится дополнительный объект связи " СтудентыBindingSource1", предназначенный для заполнения выпадающего списка (рис. 9).

Рис. 9.

После настройки всех вышеперечисленных свойств объектов новая форма примет вид (рис. 10):

Рис. 10.

На этом мы заканчиваем настройку свойств объектов и переходим к написанию кода обработчиков событий объектов.

Работу с кодом начнем написания кода для разблокирования кнопки " Сортировать", при выборе пункта списка ( ListBox1 ). Для создания процедуры события дважды щелкните ЛКМ по списку. Появится процедура обработки события, происходящего при выборе пункта списка ( ListBox1_SelectedIndexChanged ). В процедуре наберите команду разблокировки кнопки " Сортировать" (Button1): Button1.Enabled = True (рис.11).

Рис. 11.

Теперь перейдем к созданию кода сортирующего нашу таблицу в зависимости от выбранного поля и порядка сортировки при нажатии кнопки " Сортировать". Дважды щелкните по кнопке " Сортировать". Появится процедура " Button1_Click", выполняемая при щелчке по кнопке. В процедуре наберите код, представленный на рис. 12.

Рис. 12.

Рассмотрим код более подробно:

Команда Dim Col As System.Windows.Forms.DataGridViewColumn создает переменную Col для хранения имени выбранного столбца таблицы;

Затем следует блок Select Case…End Select, присваивающий в переменную Col имя выбранного столбца таблицы в зависимости от номера выбранного пункта списка ( ListBox1.SelectedIndex ). Если выбран первый пункт списка, то в переменную Col записывается столбец DataGridViewTextBoxColumn2, если второй, то - DataGridViewTextBoxColumn3 и так далее. Хотелось бы отметить тот факт, что нумерация пунктов списка начинается с нуля, а нумерация столбцов с единицы. Первый столбец " ФИО" носит имя DataGridViewTextBoxColumn2, так как имя DataGridViewTextBoxColumn1 имеет столбец заголовков строк;

Блок If…End If выполняет следующую операцию: если включен переключатель " Сортировка по возрастанию" (RadioButton1), то отсортировать таблицу по полю заданному в переменной Col по возрастанию ( СтудентыDataGridView.Sort (Col, System.ComponentModel.ListSortDirection. Ascending) ), иначе по убыванию ( СтудентыDataGridView.Sort (Col, System. ComponentModel.ListSortDirection. Descending) ).

Рассмотрим код обработчика события нажатия кнопки " Фильтровать" (Button2). Дважды щелкните по кнопке " Фильтровать" и в процедуре обработки события " Button2_Click" наберите код: СтудентыBindingSource.Filter = " ФИО='" & ComboBox1.Text & " '" (рис. 13).

Рис. 13.

Замечание: У объекта СтудентыBindingSource имеется текстовое свойство Filter (рис. 13), которое определяет условие фильтрации. Условие фильтрации имеет синтаксис: " < Имя поля> < Оператор> '< Значение> '".В нашем случае значение поля " ФИО" приравнивается к значению, выбранному в выпадающем списке ( ComboBox1.Text ) (рис. 13).

Теперь перейдем к кнопке " Показать все", отменяющей фильтрацию записей. Дважды щелкните по вышеперечисленной кнопке. Появится процедура Button2_Click. В появившейся процедуре наберите команду СтудентыBindingSource.Filter = " " (рис. 14).

Рис. 14.

Заметим, что если присвоить свойству " Filter" значение пустой строки ( " " ), то его действие будет отменено (рис. 14).

Далее рассмотрим реализацию поиска информации в таблице. Дважды щелкните по кнопке " Найти". В появившейся процедуре обработки нажатия кнопки " Button4_Click" наберите следующий код (рис. 15).

Рис. 15.

Рассмотрим более подробно код вышеприведенной процедуры. Данная процедура состоит из двух частей:

  • Первый блок For i=0…..Next i. перебирает все ячейки таблицы и устанавливает в них белый цвет фона и черный цвет текста. То есть, отменяет результаты предыдущего поиска;
  • Второй блок For i=0…..Next i. перебирает все ячейки таблицы и если они содержат текст, введенный в поле ввода ( TextBox1 ), то устанавливает в них голубой цвет фона и синий цвет текста, чем выделяет искомые ячейки.

Наконец рассмотрим код для кнопки " Закрыть". Дважды щелкните ЛКМ по этой кнопке и в появившейся процедуре " Button5_Click" наберите команду " Me.Close()", закрывающую выше рассматриваемую форму (рис. 16).

Рис. 16.

 

В заключение создадим кнопку на ленточной форме, отображающей таблицу " Студенты", для отображения соответствующей табличной формы. Откройте ленточную форму для таблицы " Студенты" (Form4) и поместите на нее новую кнопку, как это показано на рис. 17.

Рис. 17.

Задайте надпись у новой кнопки (свойство Text ), как " Таблица". Форма примет следующий вид (рис. 18):

Рис. 18.

Подключим к кнопке " Таблица" созданную ранее табличную форму ( Form6 ). Для этого дважды щелкните ЛКМ по кнопке " Таблица" и в появившейся процедуре " Button8_Click" наберите команду " Form6.Show" (рис. 19).

Рис. 19.

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

Рис. 22.20.

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

После проведения всех вышеописанных действий панель обозревателя проекта ( Solution Explorer ) примет вид (рис. 21):

Рис. 21.

Отчеты.

Теперь создадим форму отображающий созданный отчет. Добавьте в проект новую форму (Form7). Определите заголовок формы (Свойство Text) как " Отчет таблицы " Студенты" ". Поместите на форму специальный объект, отображающий отчеты " MicrosoftReportViewer", используя кнопку   расположенную на панели объектов (Toolbox). К объекту, отображающему отчеты подключите, созданный ранее отчет. Для этого в меню действий в выпадающем списке " Choose report" (Выберите отчет) выберите отчет " StudentsDB.Report1.rdlc".   Разверните объект, отображающий отчеты во всю форму. Для этого в меню действий объекта выберите пункт " Dock in Parent Container" (Развернуть в родительский контейнер). Меню действий примет вид (рис. 22): Рис. 22. Замечание: Обратите внимание на тот факт, что после подключения отчета к объекту, отображающему отчеты, на панели невидимых объектов появились объекты связи, подключающие отчет к таблице " Студенты" (рис. 23). Рис. 23. После выполнения всех вышеперечисленных действий форма, отображающая отчет примет вид, представленный на рис. 24. Рис. 24. Проверим работоспособность нового отчета, подключив форму для его отображения к кнопке на форме " Таблица " Студенты" ". На форме, отображающей таблицу " Студенты" создайте кнопку (Button9). Рис. 25 Задайте надпись на кнопке (Свойство Text) равную " Отчет" (рис. 26). Рис. 26. Теперь определим код обработчика события нажатия кнопки. Дважды щелкните ЛКМ по кнопке " Отчет" и в появившейся процедуре " Button9_Click" наберите команду " Form7.Show()" (рис. 27). Рис. 27.   Запустите проект и на главной кнопочной форме нажмите кнопку " Таблица " Студенты" ". На появившейся ленточной форме, отображающей таблицу " Студенты" нажмите кнопку " Отчет". Появится новая форма с отчетом, построенным по таблице " Студенты" (рис. 28). Рис. 28. Проверьте работу отчета.

Оформление курсовой работы

Представление работы

Выполненная курсовая работа представляется на кафедру до 10.06.11

Печатная часть: Пояснительная записка – в аудиторию 201 секретарю кафедры

Электронная часть: Размещается в личной папке студента в корневом каталоге. Папка с отчетом по курсовой работе должна иметь имя Курсовая (ФамилияСтудента). В папке с отчетом разместить:

- Папку с решением. Папка с решением должна содержать проект с исходным и исполняемым кодом, файл/файлы контрольного примера. При использовании личной библиотеки классов в этой же папке должен находиться проект с исходным и исполняемым кодом библиотеки. Решение должно быть представлено в формате среды разработки Visual Studio.NET 2008

- Электронный вариант пояснительной записки в формате Word 2003

 


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-08-31; Просмотров: 3546; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.055 с.)
Главная | Случайная страница | Обратная связь