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

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

Жанры

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

Салмре Иво

Шрифт:

' приведенные ниже функции xxx_Click.

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

'Количество элементов, которые необходимо поместить в элемент

'управления TreeView

Const NUMBER_ITEMS As Integer = 800

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

'Код для кнопки "Fill: Baseline"

'Использование
неоптимизированного подхода для заполнения данными элемента

'управления TreeView

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

Private Sub UnOptimizedFill_Click(ByVal sender As _

 System.Object, ByVal e As System.EventArgs) _

 Handles UnOptimizedFill.Click

 'Очистить массив для создания одинаковых условий тестирования

 If (TreeView1.Nodes.Count > 0) Then

TreeView1.BeginUpdate

TreeView1.Nodes.Clear

TreeView1.EndUpdate

TreeView1.Update

 End If

 'Для повышения корректности тестирования предварительно выполнить

 'операцию сборки мусора. В реальных кодах этого делать не следует!

 System.GC.Collect

 'Запустить таймер

 PerformanceSampling.StartSample(0, "TreeViewPopulate")

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

 Dim i As Integer

 For i = 1 To NUMBER_ITEMS

TreeView1.Nodes.Add("TreeItem" + CStr(i))

 Next

 'Остановить таймер и отобразить результат

 PerformanceSampling.StopSample(0)

 MsgBox(PerformanceSampling.GetSampleDurationText(0))

End Sub

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

'Код для кнопки "Clear: Baseline"

'Использование неоптимизированного подхода для заполнения данными элемента

'управления TreeView

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

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

 ByVal e As System.EventArgs) Handles UnOptimizedClear.Click

 'Для повышения корректности тестирования предварительно выполнить

 'операцию сборки мусора

 System.GC.Collect

 'Запустить
таймер

 PerformanceSampling.StartSample(1, "TreeViewClear")

 TreeView1.Nodes.Clear

 PerformanceSampling.StopSample(1)

 MsgBox(PerformanceSampling.GetSampleDurationText(1))

End Sub

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

'Код для кнопки "Fill: BeginUpdate"

'Подход, в котором используется метод BeginUpdate

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

Private Sub UseBeginEndUpdateForFill_Click(ByVal sender As _

 System.Object, ByVal e As System.EventArgs) _

 Handles UseBeginEndUpdateForFill.Click

 'Очистить массив для создания одинаковых условий тестирования

 If (TreeView1.Nodes.Count > 0) Then

TreeView1.BeginUpdate

TreeView1.Nodes.Clear

TreeView1.EndUpdate

TreeView1.Update

 End If

 'Для повышения корректности тестирования предварительно выполнить

 'операцию сборки мусора. В РЕАЛЬНЫХ КОДАХ ЭТОГО ДЕЛАТЬ НЕ СЛЕДУЕТ!

 System.GC.Collect

 'Запустить таймер

 PerformanceSampling.StartSample(2, _

"Populate - Use BeginUpdate")

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

 TreeView1.BeginUpdate

 Dim i As Integer

 For i = 1 To NUMBER_ITEMS

TreeView1.Nodes.Add("TreeItem" + i.ToString)

 Next

 TreeView1.EndUpdate

 'Остановить таймер и отобразить результат

 PerformanceSampling.StopSample(2)

 MsgBox(PerformanceSampling.GetSampleDurationText(2))

End Sub

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

'Код для кнопки "Clear: BeginUpdate"

'Подход, в котором используется метод BeginUpdate

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

Private Sub UseBeginEndUpdateForClear_Click(ByVal sender As _

 System.Object, ByVal e As System.EventArgs) _

 Handles UseBeginEndUpdateForClear.Click

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

Изгой Проклятого Клана. Том 3

Пламенев Владимир
3. Изгой
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Изгой Проклятого Клана. Том 3

Последний Паладин. Том 10

Саваровский Роман
10. Путь Паладина
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Последний Паладин. Том 10

Повелители сумерек

Первушина Елена Владимировна
Фантастика:
фэнтези
ужасы и мистика
юмористическая фантастика
детективная фантастика
6.00
рейтинг книги
Повелители сумерек

Играть... в тебя

Зайцева Мария
3. Звериные повадки Симоновых
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Играть... в тебя

Черный Маг Императора 18

Герда Александр
18. Черный маг императора
Фантастика:
юмористическое фэнтези
аниме
сказочная фантастика
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Черный Маг Императора 18

Армагед-дом

Дяченко Марина и Сергей
Фантастика:
социально-философская фантастика
альтернативная история
8.40
рейтинг книги
Армагед-дом

Воин-Врач

Дмитриев Олег
1. Воин-Врач
Фантастика:
попаданцы
альтернативная история
историческое фэнтези
6.00
рейтинг книги
Воин-Врач

Полигон

Гостева Ирина
S.T.A.L.K.E.R.
Фантастика:
боевая фантастика
7.78
рейтинг книги
Полигон

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

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 13

Убивать чтобы жить 6

Бор Жорж
6. УЧЖ
Фантастика:
боевая фантастика
космическая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 6

Оружейникъ

Кулаков Алексей Иванович
2. Александр Агренев
Фантастика:
альтернативная история
9.17
рейтинг книги
Оружейникъ

Его звали Тони. Книга 5

Кронос Александр
5. Щенки косуль
Фантастика:
городское фэнтези
технофэнтези
попаданцы
7.00
рейтинг книги
Его звали Тони. Книга 5

И в аду есть герои

Панов Вадим Юрьевич
5. Тайный Город
Фантастика:
боевая фантастика
9.19
рейтинг книги
И в аду есть герои

Кодекс Охотника. Книга III

Винокуров Юрий
3. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
7.00
рейтинг книги
Кодекс Охотника. Книга III