Наш канал в telegram канал codeby

Пишем об информационной безопасности, методах защиты информации, о программировании. Не пропускай новости с кодебай, будь в тренде !  Подробнее ...

c# работа с элементом управления TreeView

Для начала создадим Windows Forms приложение. После чего добавим на форму элемент управления TreeView, который будет заполняться данными из XML файла.

каркас приложения

 

Добавим в проект XML файл. Если вы не знаете, как это сделать, то можете прочитать об этом здесь

Структура файла:

Затем добавим ссылку типа XmlDocument и путь к xml файлу.

Заполнение TreeView данными из XML файла

Изобретать чего-то нового не будем, а воспользуемся готовым решением с сайта MSDN и просто скопируем код. После чего первую часть кода поместим в обработчик события Load главной формы.

Затем добавим вторую часть скопированного кода

Пробуем запустить приложение, нажимаем кнопку F5.

данные в виде иерархического дерева

Древовидная структура успешно отобразилась и теперь можно переходить к решению часто встречающихся задач.

Работа с элементами

Все примеры этой главы нужно поместить в обработчик события NodeMouseClick элемента управления TreeView.

Благодаря второму параметру «e» мы можем получить любую информацию о выделенном элементе в TreeView.

второй параметр

1. Получить название выделенного элемента

результат

2. Получить индекс выделенного элемента

3. Получить количество дочерних элементов:

4. Изменить название выделенного элемента

результат

5. Изменить название дочернего элемента

новое название

6. Удалить выделенный элемент

Например, удалим VAZ.

удаление элемента

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


Наш канал в telegram канал codeby

Пишем об информационной безопасности, методах защиты информации, о программировании. Не пропускай новости с кодебай, будь в тренде !  Подробнее ...

7. очистить TreeView

Все выше описанные действия затрагивают только данные внутри элемента управления TreeView и не как не отражаются в XML файле. То есть, к примеру, удаляя выделенный элемент, вы удаляете его только из коллекции элементов TreeView, но не из файла XML.

Работа с Xml файлом

Теперь рассмотрим пару примеров, как можно взаимодействовать с XML файлом. Но перед этим дополним графический интерфейс нашего приложения, добавив на форму: 2 лейбла, 2 текстовых поля: txtboxAtrName (имя атрибута), txtboxAtrValue (значение атрибута) и кнопку с надписью «изменить».

GUI

1. Выбрав элемент, мы хотим получить все его атрибуты в виде пары: название и значение.

Например, получим имя и значение атрибута элемента models. Результат на картинке

получение атрибутов

В данном примере для вывода данных используется control Textbox, так как у элементов всего по одному атрибуту. Если же атрибутов будет больше, то используйте другие элементы управления, чтобы получить все значения.

2. Хотим изменить значение какого-либо атрибута в xml файле

Принцип работы прост. Выделяем элемент в TreeView и получаем название и значение его атрибута, используя предыдущий пример.

1 шаг

Затем изменим, значение атрибута в textbox.Value и нажмём кнопку «изменить»

2 шаг

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

сообщение

Нажимаем кнопку с надписью «YES», после чего данные внутри XML файла изменяться.

результат

Update

Если загрузка элементов в TreeView происходит слишком медленно, то попробуйте воспользоваться методом BeginUpdate

Видео 1.

Видео 2.

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


Чат codeby в telegram перезагрузка

Обсуждаем вопросы информационной безопасности, методы защиты информации, программирование. Задавайте свои вопросы и комментируйте чужие.  Подробнее ...

Похожие темы

C# WebBrowser. Часть 1: Получение и вывод данных... C# WebBrowser. Часть 1: Получение и вывод данных При создании одного из своих приложений мне потребовалось реализовать в нём возможность скачивать фа...
Cоздание файла App.Config c элементом connectionSt... Cоздание файла App.Config c элементом connectionStrings Продолжаем работать с приложением, созданным в предыдущей статье. Сегодня повысим гибкость, и...
Как переименовать домен виртуальной машины KVM (VM... Как переименовать виртуальную машину на основе KVM с foo на bar, используя опцию командной строки virsh в Linux? Существует два способа переименования...
Язык XML практика и теория Введение в язык XML Данный раздел посвящен работе с XML. В нём будет собран, как теоретический, так и практический материал. Будут рассмотрены основн...
У меня не открывается xml файл, что делать?... Что делать, если не удается открыть xml файл? В этой статье хотелось бы рассмотреть некоторые причины, из-за которых очень часто не удается открыть x...