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

'последовательного заполнения дерева

'--------------------------------------------------------------------

Private Sub Button1_Click(ByVal sender As System.Object, _

 ByVal e As System.EventArgs) Handles Button1.Click

 Dim tnNewNode As TreeNode

 'Отключить обновление ПИ до тех пор, пока дерево не будет заполнено

 TreeView1.BeginUpdate

 'Избавиться от устаревших данных

 TreeView1.Nodes.Clear


 '--------------------

 'Узел "Neighborhoods"

 '--------------------

 'Добавить узел "Neighborhoods" верхнего уровня.

 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

End Sub


''-----------------------------------------------------------------------------

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

''ПРИМЕЧАНИЕ: В отличие от C#, данный обработчик

''      НЕ требует от вас связываться дорабатывать код

''      "InitializeComponent" (не делайте этого!)

''      Вы можете просто выбрать событие обычным путем

''      выпадающего списка событий в редакторах VB

''

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

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

''дочерних узлов данного узла и дает нам возможность динамически заполнить

''данными элемент управления TreeView.

''-----------------------------------------------------------------------------

Private Sub TreeView1_BeforeExpand(ByVal sender As Object, _

Перейти на страницу:

Похожие книги

Программист-прагматик. Путь от подмастерья к мастеру
Программист-прагматик. Путь от подмастерья к мастеру

Находясь на переднем крае программирования, книга "Программист-прагматик. Путь от подмастерья к мастеру" абстрагируется от всевозрастающей специализации и технических тонкостей разработки программ на современном уровне, чтобы исследовать суть процесса – требования к работоспособной и поддерживаемой программе, приводящей пользователей в восторг. Книга охватывает различные темы – от личной ответственности и карьерного роста до архитектурных методик, придающих программам гибкость и простоту в адаптации и повторном использовании.Прочитав эту книгу, вы научитесь:Бороться с недостатками программного обеспечения;Избегать ловушек, связанных с дублированием знания;Создавать гибкие, динамичные и адаптируемые программы;Избегать программирования в расчете на совпадение;Защищать вашу программу при помощи контрактов, утверждений и исключений;Собирать реальные требования;Осуществлять безжалостное и эффективное тестирование;Приводить в восторг ваших пользователей;Формировать команды из программистов-прагматиков и с помощью автоматизации делать ваши разработки более точными.

Эндрю Хант , Дэвид Томас , А. Алексашин

Программирование / Книги по IT
Разработка ядра Linux
Разработка ядра Linux

В книге детально рассмотрены основные подсистемы и функции ядер Linux серии 2.6, включая особенности построения, реализации и соответствующие программны интерфейсы. Рассмотренные вопросы включают: планирование выполнения процессов, управление временем и таймеры ядра, интерфейс системных вызовов, особенности адресации и управления памятью, страничный кэш, подсистему VFS, механизмы синхронизации, проблемы переносимости и особенности отладки. Автор книги является разработчиком основных подсистем ядра Linux. Ядро рассматривается как с теоретической, так и с прикладной точек зрения, что может привлечь читателей различными интересами и потребностями.Книга может быть рекомендована как начинающим, так и опытным разработчикам программного обеспечения, а также в качестве дополнительных учебных материалов.

Роберт Лав

Программирование, программы, базы данных / Программирование / Книги по IT