2009-12-21 6 views
1

Я разрабатываю приложение ASP.NET WebForm с .NET Framework 3.5 SP1 и C#.ASP.NET TreeView: возврат к выбранному узлу

У меня есть TreeView на странице. Пользователь может перемещаться по своим узлам, чтобы выбрать один. Затем пользователь может редактировать информацию, представленную этим узлом, на другой странице. Я хочу, когда пользователь вернется на эту страницу, treeview выбрал узел, который был выбран ранее.

UPDATE

Пользователь выберите узел, а затем нажмите на кнопку asp.net. Затем пользователь переходит на другую страницу. На этой другой странице пользователь отредактирует некоторые данные, а затем нажмите на другую кнопку asp.net, чтобы вернуться к древовидной структуре.

Я попытался сохранить selectednode в сеансе, но мне нужно загрузить все treeview, чтобы найти этот узел. Для загрузки всех узлов может потребоваться много времени.

Кроме того, treeview загружается в событие TreeNodeExpanded, и я устанавливаю его свойство ExpandDepth равным 1. Он не имеет источника данных. Я создаю и добавляю узлы во время выполнения.

Как я могу это сделать?

Если вам нужно больше информации, расскажите мне!

спасибо.

+0

Просто уточните это мне, когда пользователь нажмет узел, он переместит его на другую страницу? правильно? ... –

+0

-sry..deleted 1-й комментарий по ошибке ..- Итак, если попытка сохранения SelectedNode в сеансе не оптимальна, потому что Treeview может быть огромным? –

+0

также отображается Treeview на странице Load? или путем связывания некоторого источника данных? –

ответ

1

Не знаю, соответствует ли оно вашим конкретным требованиям, но в целом самый простой способ справиться с такими ситуациями - использовать модальное всплывающее окно, а не отправлять пользователя на совершенно другую страницу.

0

заполнить ваши узлы дерева, когда страница загружается в первый раз. , и если есть выбранный узел (в сеансе, querystring или cookie), выберите его при заполнении дерева.