TubularX
July 8th, 2008, 05:26 AM
Main page:
Dim MyTreeControl As New ctlTreeControl()
MyTreeControl.ID = "MyTreeControl"
ctlTreeControl:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim panelTree1 As New System.Web.UI.WebControls.Panel
panelTree1.ScrollBars = ScrollBars.Both
panelTree1.ID = "panelTree1"
Dim TreeView1 As New System.Web.UI.WebControls.TreeView
TreeView1.ID = "TreeView1"
'... TreeView1.Nodes.Add ... etc
panelTree1.Controls.Add(TreeView1)
Me.Controls.Add(panelTree1)
' call RegisterStartupScript to create a function AutoScrollSelectedNode().
' I want the script to get the selected node and then scroll down to it.
CreateStartupScripts()
End Sub
In the source of the rendered page:
<div>
<input type="hidden" name="ctl00_ContentBody_MyTreeControl_TreeView1_ExpandState" id="ctl00_ContentBody_MyTreeControl_TreeView1_ExpandState" value="eennennnnnenennnnnennennnnen" />
<input type="hidden" name="ctl00_ContentBody_MyTreeControl_TreeView1_SelectedNode" id="ctl00_ContentBody_MyTreeControl_TreeView1_SelectedNode" value="ctl00_ContentBody_MyTreeControl_TreeView1t10" />
<input type="hidden" name="ctl00_ContentBody_MyTreeControl_TreeView1_PopulateLog" id="ctl00_ContentBody_MyTreeControl_TreeView1_PopulateLog" value="" />
</div>
<script id="TreeViewScript" language=javascript>
function AutoScrollSelectedNode() {
var name = TreeView1_Data.selectedNodeID.value;
var selectedNode = document.getElementById(name);
// ...
}
</script>
<script type="text/javascript">
<!--
WebForm_InitCallback();var ctl00_ContentBody_MyTreeControl_TreeView1_Data = new Object();
ctl00_ContentBody_MyTreeControl_TreeView1_Data.images = ctl00_ContentBody_MyTreeControl_TreeView1_ImageArray;
ctl00_ContentBody_MyTreeControl_TreeView1_Data.collapseToolTip = "Collapse {0}";
ctl00_ContentBody_MyTreeControl_TreeView1_Data.expandToolTip = "Expand {0}";
ctl00_ContentBody_MyTreeControl_TreeView1_Data.expandState = theForm.elements['ctl00_ContentBody_MyTreeControl_TreeView1_ExpandState'];
ctl00_ContentBody_MyTreeControl_TreeView1_Data.selectedNodeID = theForm.elements['ctl00_ContentBody_MyTreeControl_TreeView1_SelectedNode'];
for (var i=0;i<6;i++) {
var preLoad = new Image();
if (ctl00_ContentBody_MyTreeControl_TreeView1_ImageArray[i].length > 0)
preLoad.src = ctl00_ContentBody_MyTreeControl_TreeView1_ImageArray[i];
}
ctl00_ContentBody_MyTreeControl_TreeView1_Data.lastIndex = 28;
ctl00_ContentBody_MyTreeControl_TreeView1_Data.populateLog = theForm.elements['ctl00_ContentBody_MyTreeControl_TreeView1_PopulateLog'];
ctl00_ContentBody_MyTreeControl_TreeView1_Data.treeViewID = 'ctl00$ContentBody$MyTreeControl$TreeView1';
ctl00_ContentBody_MyTreeControl_TreeView1_Data.name = 'ctl00_ContentBody_MyTreeControl_TreeView1_Data';
// -->
</script>
I want my function AutoScrollSelectedNode() to get the selected node. I've tried with "TreeView1_Data.selectedNodeID.value", but it always complains that 'TreeView1_Data' is undefined.
I've also tried with:
MyTreeControl_TreeView1_Data.selectedNodeID.value;
ctl00_ContentBody_MyTreeControl_TreeView1_Data.selectedNodeID.value;
I'm using IE6, .NET 2.0. What must I write to get the selected node?
Dim MyTreeControl As New ctlTreeControl()
MyTreeControl.ID = "MyTreeControl"
ctlTreeControl:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim panelTree1 As New System.Web.UI.WebControls.Panel
panelTree1.ScrollBars = ScrollBars.Both
panelTree1.ID = "panelTree1"
Dim TreeView1 As New System.Web.UI.WebControls.TreeView
TreeView1.ID = "TreeView1"
'... TreeView1.Nodes.Add ... etc
panelTree1.Controls.Add(TreeView1)
Me.Controls.Add(panelTree1)
' call RegisterStartupScript to create a function AutoScrollSelectedNode().
' I want the script to get the selected node and then scroll down to it.
CreateStartupScripts()
End Sub
In the source of the rendered page:
<div>
<input type="hidden" name="ctl00_ContentBody_MyTreeControl_TreeView1_ExpandState" id="ctl00_ContentBody_MyTreeControl_TreeView1_ExpandState" value="eennennnnnenennnnnennennnnen" />
<input type="hidden" name="ctl00_ContentBody_MyTreeControl_TreeView1_SelectedNode" id="ctl00_ContentBody_MyTreeControl_TreeView1_SelectedNode" value="ctl00_ContentBody_MyTreeControl_TreeView1t10" />
<input type="hidden" name="ctl00_ContentBody_MyTreeControl_TreeView1_PopulateLog" id="ctl00_ContentBody_MyTreeControl_TreeView1_PopulateLog" value="" />
</div>
<script id="TreeViewScript" language=javascript>
function AutoScrollSelectedNode() {
var name = TreeView1_Data.selectedNodeID.value;
var selectedNode = document.getElementById(name);
// ...
}
</script>
<script type="text/javascript">
<!--
WebForm_InitCallback();var ctl00_ContentBody_MyTreeControl_TreeView1_Data = new Object();
ctl00_ContentBody_MyTreeControl_TreeView1_Data.images = ctl00_ContentBody_MyTreeControl_TreeView1_ImageArray;
ctl00_ContentBody_MyTreeControl_TreeView1_Data.collapseToolTip = "Collapse {0}";
ctl00_ContentBody_MyTreeControl_TreeView1_Data.expandToolTip = "Expand {0}";
ctl00_ContentBody_MyTreeControl_TreeView1_Data.expandState = theForm.elements['ctl00_ContentBody_MyTreeControl_TreeView1_ExpandState'];
ctl00_ContentBody_MyTreeControl_TreeView1_Data.selectedNodeID = theForm.elements['ctl00_ContentBody_MyTreeControl_TreeView1_SelectedNode'];
for (var i=0;i<6;i++) {
var preLoad = new Image();
if (ctl00_ContentBody_MyTreeControl_TreeView1_ImageArray[i].length > 0)
preLoad.src = ctl00_ContentBody_MyTreeControl_TreeView1_ImageArray[i];
}
ctl00_ContentBody_MyTreeControl_TreeView1_Data.lastIndex = 28;
ctl00_ContentBody_MyTreeControl_TreeView1_Data.populateLog = theForm.elements['ctl00_ContentBody_MyTreeControl_TreeView1_PopulateLog'];
ctl00_ContentBody_MyTreeControl_TreeView1_Data.treeViewID = 'ctl00$ContentBody$MyTreeControl$TreeView1';
ctl00_ContentBody_MyTreeControl_TreeView1_Data.name = 'ctl00_ContentBody_MyTreeControl_TreeView1_Data';
// -->
</script>
I want my function AutoScrollSelectedNode() to get the selected node. I've tried with "TreeView1_Data.selectedNodeID.value", but it always complains that 'TreeView1_Data' is undefined.
I've also tried with:
MyTreeControl_TreeView1_Data.selectedNodeID.value;
ctl00_ContentBody_MyTreeControl_TreeView1_Data.selectedNodeID.value;
I'm using IE6, .NET 2.0. What must I write to get the selected node?