Как выполнить чтение xml файла с выводом данных в DataGridView?

В этой статье хочу показать на простом примере, как можно выполнить чтение xml файла с выводом данных в DataGridView.

И так для начала создадим Windows Forms приложение на языке c# и добавим на форму два элемента управления: кнопку и DataGridView.

элемент DataGridView

Затем создадим xml файл, который, к примеру, пускай содержит следующую структуру:

После чего добавим xml файл в проект.

Для работы с xml файлами и документами необходимо добавить строку:

На этом подготовительная часть закончена, переходим к решению задачи.

И так сначала добавим метод CreateTable, с помощью него мы создадим таблицу с тремя колонками: id, name и age, в которой будем хранить значения элементов и атрибутов, содержащихся в xml файле.

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

Таблица создана и заполнена. Теперь нам осталось только вывести данные в DataGridView.

результат

вывод данных

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

Вместо указания индекса таблицы, Вы так же можете указать имя таблицы, например:

В этом примере мы сначала выполняем чтение xml файла, а затем выводим данные в DataGridView. Только в отличие от предыдущего способа в данном примере мы используем метод ReadXml объекта класса DataSet.

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

заполненная таблица

Всё-таки хотелось бы, чтобы колонка id была первой. Исправить это достаточно просто, например можно воспользоваться свойством DisplayIndex.

Новый порядок столбцов: id, name, age.

На этом всё, если есть вопросы, то оставляйте их в комментариях.

Читайте также:

Похожие темы

Чтение и загрузка csv файла на c#... Загрузка csv файла с выводом данных в dataGridView Сегодня хочу показать на простом примере, как выполняется загрузка и чтение CSV файла с помощью яз...
c# Запись данных в xml файл Как записать данные в xml файл? Из этой небольшой статьи вы узнаете, как запись данных в xml файл с помощью языка c# 1. Создадим новый проект типа...
Как найти xml элемент по его атрибуту в XML файле?... Как найти xml элемент по его атрибуту? Из этой статьи Вы узнаете, как найти xml элемент по его атрибуту с помощью простого LINQ запроса. И так для на...
В чём отличие между методом Nodes и Descendants?... В чём разница между методом Nodes и Descendants? В этой статье хочу рассказать про метод Descendants и показать его отличие от метода Nodes при работ...
Удаление узла в xml документе... Как удалить узел в xml документе? В этой небольшой заметке хочу показать Вам, как удалить узел в xml документе с помощью технологии Linq to XML. И...