Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройств Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ .NET Compact FrameworkΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 190

Автор Иво Π‘Π°Π»ΠΌΡ€Π΅

' [out] firstName: Π—Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ΅ имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

' [out] lastName: ЗагруТСнная фамилия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

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

Public Shared Sub XML_LoadUserInfo(ByVal fileName As String, _

 ByRef userId As Integer, ByRef firstName As String, _

 ByRef lastName As String)


 Dim currentReadLocation As ReadLocation

 'НачинаСм с Π½ΡƒΠ»Π΅Π²Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ

 userId = 0

 firstName = ""

 lastName = ""


 Dim xmlReader As System.Xml.XmlTextReader = _

  New System.Xml.XmlTextReader(fileName)


 xmlReader.WhitespaceHandling = _

  System.Xml.WhitespaceHandling.None


 Dim readSuccess As Boolean

 readSuccess = xmlReader.Read()

 If (readSuccess = False) Then

  Throw New System.Exception("ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ XML-Π΄Π°Π½Π½Ρ‹Π΅ для чтСния!")

 End If


 'Π£Π±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ распознали ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ дСскриптор

 If (xmlReader.Name <> XML_ROOT_TAG) Then

  Throw New System.Exception( _

   "ΠšΠΎΡ€Π½Π΅Π²ΠΎΠΉ дСскриптор отличаСтся ΠΎΡ‚ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ!")

 End If


 'ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ мСстополоТСниС Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅

 currentReadLocation = ReadLocation.inAllMyData


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

 'Π¦ΠΈΠΊΠ» прохоТдСния Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

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

 While (readSuccess)

  Select Case (xmlReader.NodeType)

  'ВызываСтся ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт

  Case System.Xml.XmlNodeType.Element

   Dim nodeName As String = xmlReader.Name

   LoadHelper_NewElementEncountered(nodeName, _

    currentReadLocation)


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

   'Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ фактичСский тСкст

   'ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ пытаСмся Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ

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

  Case System.Xml.XmlNodeType.Text

   Select Case currentReadLocation

   Case ReadLocation.inFirstName

    firstName = xmlReader.Value

   Case ReadLocation.inLastName

    lastName = xmlReader.Value

   Case ReadLocation.inUserID

    userId = CInt(xmlReader.Value)

   End Select

   'ΠšΠΎΠ½Π΅Ρ† ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Case "System.Xml.XmlNodeType.Text"


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

   'ВызываСтся, ΠΊΠΎΠ³Π΄Π° встрСчаСтся ΠΊΠΎΠ½Π΅Ρ†

   'элСмСнта

   '

   'ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°Ρ…ΠΎΡ‚Π΅Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ состояниС Π² зависимости

   'ΠΎΡ‚ Π²ΠΈΠ΄Π° ΠΏΠΎΠΊΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ ΡƒΠ·Π»Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ

   'собираСмся Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ Π½Π°Π·Π°Π΄ ΠΊ Π΅Π³ΠΎ ΠΏΡ€Π΅Π΄ΠΊΡƒ

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

  Case System.Xml.XmlNodeType.EndElement

   Dim continueParsing As Boolean

   continueParsing = LoadHelper_EndElementEncountered( _

    currentReadLocation)

   If (continueParsing = False) Then

    GoTo finished_reading_wanted_data

   End If

  Case Else

   'He ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎ, Ссли ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ XML-ΡƒΠ·Π»Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ², Π½ΠΎ

   'Π² нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с XML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹

   'ΠΎΠΏΠΎΠ²Π΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΎΠ± этом Ρ„Π°ΠΊΡ‚Π΅

   MsgBox( _

    "ВстрСтился Π½Π΅ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Π½Π½Ρ‹ΠΉ XML-Ρ‚ΠΈΠΏ " + xmlReader.Name)

  End Select 'ΠšΠΎΠ½Π΅Ρ† ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Case, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ для опрСдСлСния Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ

  'Ρ‚ΠΈΠΏΠ° XML-элeΠΌeΠ½Ρ‚a, oΠ±paΠ±aΡ‚Ρ‹Π²aeΠΌoΠ³o Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠΌ


  'ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΡƒΠ·Π»Ρƒ

  readSuccess = xmlReader.Read()

 End While

 'Если ΠΌΡ‹ оказались Π² этом мСстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½Π΅ ΠΏΠΎΠΊΠΈΠ½ΡƒΠ²

 'XML-дСскриптора UserInfo, Ρ‚ΠΎ с XML-Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ считываСм,

 'Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ

 Throw New Exception("He Π½Π°ΠΉΠ΄Π΅Π½ элСмСнт UserInfo Π² XML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅!")

finished reading_wanted_data:

 'Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ», ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚Π° с Π½ΠΈΠΌ Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π°!

 xmlReader.Close()

End Sub


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

'Π’ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, отвСтствСнный Π·Π° принятиС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

'ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΎΠ³ΠΎ, Π² ΠΊΠ°ΠΊΠΎΠ΅ состояниС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ,

'ΠΊΠΎΠ³Π΄Π° встрСчаСтся Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ дСскриптор

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

Private Shared Function LoadHelper_EndElementEncountered( _

 ByRef currentReadLocation As ReadLocation) As Boolean

 Select Case (currentReadLocation)


 'Если ΠΌΡ‹ ΠΏΠΎΠΊΠΈΠ΄Π°Π΅ΠΌ ΡƒΠ·Π΅Π» Name, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ

 'ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² ΡƒΠ·Π΅Π» UserInfo

 Case ReadLocation.inName

  currentReadLocation = ReadLocation.inUserInfo


 'Если ΠΌΡ‹ ΠΏΠΎΠΊΠΈΠ΄Π°Π΅ΠΌ ΡƒΠ·Π΅Π» FirstName, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ

 'ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² ΡƒΠ·Π΅Π» Name

 Case ReadLocation.inFirstName

  currentReadLocation = ReadLocation.inName


 'Если ΠΌΡ‹ ΠΏΠΎΠΊΠΈΠ΄Π°Π΅ΠΌ ΡƒΠ·Π΅Π» LastName, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ

 'ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² ΡƒΠ·Π΅Π» Name

  Case ReadLocation.inLastName

   currentReadLocation = ReadLocation.inName


 'Если ΠΌΡ‹ ΠΏΠΎΠΊΠΈΠ΄Π°Π΅ΠΌ ΡƒΠ·Π΅Π» UserID, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ

 'ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² ΡƒΠ·Π΅Π» UserInfo

 Case ReadLocation.inUserID

  currentReadLocation = ReadLocation.inUserInfo


 'Если ΠΌΡ‹ ΠΏΠΎΠΊΠΈΠ΄Π°Π΅ΠΌ ΡƒΠ·Π΅Π» UserInfo, Ρ‚ΠΎ ΠΌΡ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ

 'Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΡƒΠ·Π»Π°Ρ… UserID, FirstName

 'ΠΈ LastName

 '

 'МоТно Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ· Ρ†ΠΈΠΊΠ»Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρƒ нас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ вся

 'информация, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ!

 Case ReadLocation.inUserInfo

  Return False 'Анализ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½

 End Select

 Return True

 'ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π°Π½Π°Π»ΠΈΠ·

End Function


Private Shared Sub LoadHelper_NewElementEncountered( _

 ByVal nodeName As String, _

 ByRef currentReadLocation As ReadLocation)


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

 'ΠœΡ‹ вошли Π² Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт!

 'Π’ ΠΊΠ°ΠΊΠΎΠ΅ состояниС ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½, зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ,

 'Π² ΠΊΠ°ΠΊΠΎΠΌ состоянии ΠΌΡ‹ находимся Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚

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

 Select Case (currentReadLocation)

 'Если ΠΌΡ‹ находимся Π² ΡƒΠ·Π»Π΅ AllMyData, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½

 'Π² ΡƒΠ·Π»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π½ΠΈΠΆΠ΅

 Case (ReadLocation.inAllMyData)

  If (nodeName = XML_USERINFO_TAG) Then

   currentReadLocation = ReadLocation.inUserInfo

  End If


 'Если ΠΌΡ‹ находимся Π² ΡƒΠ·Π»Π΅ UserInfo, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½

 'Π² ΡƒΠ·Π»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π½ΠΈΠΆΠ΅

 Case (ReadLocation.inUserInfo)

  If (nodeName = XML_USERID_TAG) Then

   currentReadLocation = ReadLocation.inUserID

  ElseIf (nodeName = XML_NAMEINFO_TAG) Then

   currentReadLocation = ReadLocation.inName

  End If


 'Если ΠΌΡ‹ находимся Π² ΡƒΠ·Π»Π΅ Name, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½

 'Π² ΡƒΠ·Π»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π½ΠΈΠΆΠ΅

 Case (ReadLocation.inName)

  If (nodeName = XML_FIRSTNAME_TAG) Then

   currentReadLocation = ReadLocation.inFirstName

  ElseIf (nodeName = XML LASTNAME_TAG) Then

   currentReadLocation = ReadLocation.inLastName

  End If

 End Select

End Sub

End Class

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊ Π³Π»Π°Π²Π΅ 11 (ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°)

Листинг 11.1. Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ очистка ΠΎΡ‚ Π½ΠΈΡ… элСмСнтов управлСния TreeView с использованиСм Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… стратСгий

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

'ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ #1: Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ класс PerformanceSampling,

' ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π°Π½Π΅Π΅ Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ

' Π²Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ этот класс Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

'ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ #2: Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² класс Form, содСрТащий элСмСнт

 ' управлСния TreeView ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Button, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹

' ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Π½ΠΈΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ 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