Чтение онлайн

на главную - закладки

Жанры

Программирование мобильных устройств на платформе .NET Compact Framework

Салмре Иво

Шрифт:

 tnNewNode = treeView1.Nodes.Add("Neighborhoods");

 //Установить для узла метку, указывающую на то, что узел

 //будет заполняться динамически

 tnNewNode.Tag = node_needToBePopulated;

 //Этот фиктивный дочерний узел существует лишь для того, чтобы

 //узел имел, по крайней мере, один дочерний узел и поэтому

 //был расширяемым.

 tnNewNode.Nodes.Add(dummy_node);

 //------------

 //Узел "Price"

 //------------

 tnNewNode = treeView1.Nodes.Add("Price");

 //Установить для узла метку, указывающую на то, что узел

 //будет заполняться динамически

 tnNewNode.Tag = node_needToBePopulated;

 //Этот фиктивный дочерний узел существует лишь для того, чтобы

 //узел имел, по крайней мере, один дочерний узел и поэтому

 //был расширяемым.

 tnNewNode.Nodes.Add(dummy_node);

 //----------------

 //Узел "HouseType"

 //----------------

 tnNewNode = treeView1.Nodes.Add("HouseType");

 //Установить для узла метку, указывающую на то, что узел

 //будет заполняться динамически

 tnNewNode.Tag = node_needToBePopulated;

 //Этот фиктивный дочерний узел существует лишь для того, чтобы

 //узел имел, по крайней мере, один дочерний узел и поэтому

 //был расширяемым.

 tnNewNode.Nodes.Add(dummy_node);

 //Восстанавливаем обновление интерфейса

 treeView1.EndUpdate;

}

//-------------------------------------------------------------------------

//Обработчик событий BeforeExpand для нашего элемента управления TreeView

//ПРИМЕЧАНИЕ: Этот обработчик событий необходимо будет

// вручную подключить к функции InitializeComponent

// формы.

//

//Вызывается при запросе пользователем расширения узла, у которого имеется,

//по крайней мере, один дочерний узел. Этот вызов осуществляется до

//отображения дочерних узлов данного узла и дает нам возможность

//динамически заполнить данными элемент управления TreeView.

//-------------------------------------------------------------------------
 

private void TreeView1BeforeExpand (object sender, System.Windows.Forms.TreeViewCancelEventArgs e) {

 //Получить узел, который будет расширяться

 System.Windows.Forms.TreeNode tnExpanding;

 tnExpanding = e.Node;

 //Если узел не отмечен как "нуждающийся в заполнении данными",

 //то он устраивает нас в том виде, "как он есть".

 if (tnExpanding.Tag !=(object) node_needToBePopulated) {

return; //Разрешить беспрепятственное продолжение выполнение

 }

 //------------------------------------------------------------

 //Требуется динамическое заполнение дерева данными.

 //Мы знаем, что узел должен быть заполнен данными; определить,

 //что это за узел

 //------------------------------------------------------------

if (tnExpanding.Text == nodeText Neighborhoods) {

PopulateTreeViewNeighborhoods(tnExpanding);

return; //добавление элементов закончено!

 } else {

//Проверить другие возможности для узлов дерева, которые мы должны

//добавить.

System.Windows.Forms.MessageBox.Show("НЕ СДЕЛАНО: Добавьте код для динамического заполнения этого узла");

//Снять отметку с этого узла, чтобы мы не могли вновь выполнить

//этот код

tnExpanding.Tag = "";

 }

}

//------------------------------------------------------------------

//Эта функция вызывается для динамического добавления дочерних узлов

//в узел "Neighborhood"

//------------------------------------------------------------------

void PopulateTreeViewNeighborhoods(TreeNode tnAddTo) {

 TreeView tvControl;

 tvControl = tnAddTo.TreeView;

 tvControl.BeginUpdate;

 //Очистить имеющийся фиктивный узел

 tnAddTo.Nodes.Clear;

 //Объявить четыре узла, которые мы хотим сделать дочерними узлами

 //того узла, который был передан.

 TreeNode[] newNeighborhoodNodes;

Поделиться:
Популярные книги

Я уже царь. Книга XXIX

Дрейк Сириус
29. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я уже царь. Книга XXIX

Подросток

Достоевский Федор Михайлович
Проза:
русская классическая проза
9.09
рейтинг книги
Подросток

Товарищ "Чума" 6

lanpirot
6. Товарищ "Чума"
Фантастика:
городское фэнтези
попаданцы
альтернативная история
5.00
рейтинг книги
Товарищ Чума 6

Сирийский рубеж 3

Дорин Михаил
7. Рубеж
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Сирийский рубеж 3

Локки 4 Потомок бога

Решетов Евгений Валерьевич
4. Локки
Фантастика:
аниме
фэнтези
5.00
рейтинг книги
Локки 4 Потомок бога

Алые перья стрел

Крапивин Владислав Петрович
Детские:
детские приключения
8.58
рейтинг книги
Алые перья стрел

Некромант

Щепетнов Евгений Владимирович
4. Петр Синельников
Фантастика:
боевая фантастика
6.20
рейтинг книги
Некромант

На границе империй. Том 10. Часть 5

INDIGO
23. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 5

Барон. Книга вторая

Первухин Андрей Евгеньевич
6. Ученик
Фантастика:
фэнтези
попаданцы
5.40
рейтинг книги
Барон. Книга вторая

Эфемер

Прокофьев Роман Юрьевич
7. Стеллар
Фантастика:
боевая фантастика
рпг
7.23
рейтинг книги
Эфемер

Майами

Фишер Марк
Детективы:
триллеры
6.40
рейтинг книги
Майами

Чужак

Листратов Валерий
1. Ушедший Род
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Чужак

Старая школа рул

Ромов Дмитрий
1. Второгодка
Фантастика:
альтернативная история
6.00
рейтинг книги
Старая школа рул

Требую развода! Что значит- вы отказываетесь?

Мамлеева Наталья
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Требую развода! Что значит- вы отказываетесь?