Все про datagridview

Інший спосіб створення різнорідних рядків або комірок - скористатися методом DataGridViewRow.CreateCells (). Цей метод заповнює екземпляр рядка осередками, що зчитуються з примірників DataGridView. вказаного в якості параметра. У цього методу є два перевантажених варіанту, другий з яких, крім усього іншого, дозволяє задати значення осередків. Нижче наведено приклад, в якому створюється новий рядок, опис колонок якої зчитується з DataGridView. після чого один з осередків замінюється іншою, з іншим типом, після чого рядок додається в DataGridView:

Можливість "на льоту" змінювати тип осередку, і, отже, візуальне представлення даних, представляється дуже цікавою і багатообіцяючою можливістю, особливо з урахуванням потенціалу створення осередків власного типу з потрібним саме вам стилем відображення даних. Думаю, розробники реальних проектів скористаються цією можливістю в найшвидшому часі.

Заносимо дані в осередку. Режим вільних даних.

Найчастіше дані потрапляють в DataGridView з підключеного джерела даних. При цьому вбудований механізм Windows Forms Data Binding автоматично заповнює кожну клітинку значенням з відповідної комірки джерела. Але, як ви вже знаєте, новий control підтримує також спеціальний режим відображення «вільних» (не прив'язаних, unbound) даних. Крім того, підтримується комбінований режим одночасного відображення пов'язаних і вільних даних.

Трохи термінології для початку. Вільними даними називаються дані, що заносяться в осередку вручну. Пов'язаними даними називаються дані, що заносяться в осередку автоматично з прив'язаного джерела даних. Чи будуть дані вважатися пов'язаними або вільними, визначається на рівні колонок.

Колонка стає пов'язаної, якщо в її властивість DataGridViewColumn.DataPropertyName (типу string) заноситься назва колонки або властивості об'єкта з джерела даних. Колонка вважається вільною, якщо згадане властивість стає рівним порожній рядку.

Якщо властивість AutoGenerateColumns виставлено в true. DataGridView не тільки генерує новий список колонок при підключенні джерела даних, а й прив'язує ці колонки до колонок або властивостями джерела даних.

Однак це не означає, що не можна управляти прив'язкою колонок після їх автоматичного формування. Розберемо такий приклад. Припустимо, у нас є дві прості таблиці (рисунок 10).

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

Схожі статті