У меня проблема с моим TreeView.
Мой TreeView находится в UserControl.На первой странице UserControl размещается непосредственно на странице контента.Все работает finde.
пример (рабочий):
<a id="MainContent_CategoryTreeView1_TreeView1n209" href="javascript:TreeView_ToggleNode(MainContent_CategoryTreeView1_TreeView1_Data,209,MainContent_CategoryTreeView1_TreeView1n209,' ',MainContent_CategoryTreeView1_TreeView1n209Nodes)">
<img src="demo.jpg" />
</a>
На второй странице UserControl помещается в TabContainer (TabPanel).Javascript для расширения не работает.
Я обнаружил, что идентификатор ячейки таблицы, в которую помещается развернутое изображение, отличается от href, в котором находится javascript.
пример (не работает):
<a id="MainContent_TabContainer_tbPbl_Categories_CategoryTreeView1_TreeView1n209" href="javascript:TreeView_ToggleNode(MainContent_CategoryTreeView1_TreeView1_Data,209,MainContent_CategoryTreeView1_TreeView1n209,' ',MainContent_CategoryTreeView1_TreeView1n209Nodes)">
<img src="demo.jpg" />
</a>
Это ошибка ASP.Net TreeView?Любая идея, как решить эту проблему?
РЕДАКТИРОВАТЬ:
Может быть тоже интересно: всякий раз, когда TreeView загружается первым, я строю иерархию в коде и сохраняю rootNode в Cache.Итак, мое событие Page Load выглядит так:
if (CacheFacade.CategoryTreeView == null)
var rootNode = BuildHierachy();
CacheFacade.CategoryTreeView = rootNode;
//databind rootNode to TreeView
else
//databind from CacheFacade.CategoryTreeView
Это то, что портит сгенерированный javascript.Но почему?В JavaScript есть сгенерированные идентификаторы клиентов.Разве это не часть рендеринга (после PageLoad)?