Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / edit дерева / 2 сообщений из 2, страница 1 из 1
03.09.2006, 18:45
    #33960757
JuliJ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
edit дерева
Мое приложение падает между Page_Load и PreRender, т.е.Page_Load проходит совершенно нормально, и потом не заходя никуда (т.е. события серверных контролей отсутствуют),падает,не заходя в PreRender.Подскажите, пожалуйста, как это можно отловить в дебагере или на чем это может падать?

Сущность действия такова, что имеется дерево, в котором мы делаем Edit node.После изменения имени в text box и нажатии клавиши enter,код удачно проходит событие onload и выдает на экран ошибку, что node не найден в данном дереве.
...
Рейтинг: 0 / 0
03.09.2006, 23:17
    #33960937
vbnet2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
edit дерева
Лично я свой GetCurrentNode писал. Он у тебя теряется, думаю. Это первое .
Подобный фрагмент у меня работает отлично:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
    Protected Sub btEdit_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btEdit.Click
        Dim i As Integer
        NodeX = sh.mytree.GetCurrentNode(TreeView1, TextBox3.Text)
        If NodeX Is Nothing Then Exit Sub
        Oper = sh.mytree.OperType.Edit
        Select Case NodeX.Depth
            Case  0  : Exit Sub    'Root
            Case 1 'группы
                i = sh.mytree.GetValueFromPath("MyGroup_i", NodeX.ValuePath)
                If i =  0  Then Exit Sub
                i = sh.common.ExecSQL("GroupEdit", "@i", i, "@NewName", Left(TextBox1.Text,  50 ))
            Case  2  'подгруппы
                i = sh.mytree.GetValueFromPath("MySubGroup_i", NodeX.ValuePath)
                If i =  0  Then Exit Sub
                i = sh.common.ExecSQL("SubGroupEdit", "@i", i, "@NewName", Left(TextBox1.Text,  50 ))
        End Select
    End Sub
Когда ты сам свой текущий нод организовываешь, то можно с узлами делать че хошь, ну например двигать их по уровням Depth.

Второе . С привязкой к XmlDataSource у меня ничего не получилось редактировать, не то, что двигать ноды на разные узлы иерархии, переименовавыть, добавлять и прочее. Пришлось отказатся от такого легкого пути и самому грузить дерево. Из базы вытакскивать данные в виде XML, потрошить их по Xpatch, чтоб отобрать ноды на каждый уровень иерархии и вручную при каждом постбеке перезагружать дерево. Перезагружать потому, что я как видишь в фрагменте сверху - просто пишу новое значение в базу и не обновляю XML, по идее можно б было без базе, ну скажем, прямо в кеше. Но у меня 12 операций с деревом, изменения иерархии нодов, новые, удаления, вставка, переброска дочерних узлов ликвидированного узла в корень и прочее. Просто много возни получается, если все синхронно в каждой из 12 прог сразу обновлять в XML. И чтобы не возится из каждой операции просто валю все в базу (как на фрагменте кода выше), а оттуда заново вытаскиваю актуальное дерево и загружаю новое.
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / edit дерева / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]