Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница:

 

  Вопрос: TreeView Уменшил количество кода Добавлено: 07.07.04 12:58  

Автор вопроса:  Дмитрий_JDV
Подскажите пожалуйста!!!!
Почему при удалении узлов всегда остается одна запись в таблице esTreeViewNodes, в своей работе использую указанный ниже класс,
проблема где-то в функции Remove в этой строке Do Until NodeRS.NoMatch, программа показывает значение True при необходимости перехода к данной строке...и
далее получается ее пропуск в следствии чего она остается в таблице....
Function NodeDel() As Boolean
' Удаление узла из TreeView (True при удачном удалении)
' On Error GoTo Break
  Key = Object.SelectedItem.Key
  Object.Nodes.Remove Key
  Call Remove
   
  NodeDel = True
  Exit Function
'Break:
' With New esAsk: .Error "NodeDel"
' End With
End Function

Private Function Remove() As Boolean
' Удаляет узел с дочерними узлами из таблицы типа TreeViewNodes
'
' ОСОБЕННОСТИ ФУНКЦИИ:
' функция является РЕКУРСИВНОЙ
Dim krit As String

'On Error GoTo Break
krit = "Key = '" & Key & "'"

NodeRS.FindFirst krit

If Not NodeRS.NoMatch Then
  NodeRS.Delete

  krit = "Parent = '" & Key & "'"
  NodeRS.FindFirst krit
  Do Until NodeRS.NoMatch
    Key = NodeRS!Key
    Call Remove
    NodeRS.FindNext krit
  Loop
End If

Remove = True
Exit Function

End Function

Ответить

  Ответы Всего ответов: 0  

Нет ответов

Страница:

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам