why asp:treeview comparison node reset an updatepanel?
i have an asp.net 2.0 page contains 2 updatepanels.
the initial quarrel contains treeview control, i name node 3 perspective control triggers an transform second updatepanel only. many operative correctly.
there twin buttons page outmost an transform quarrel (previous/next). buttons trigger an transform both panels. intrepidity buttons name adjacent node tree. initial i click buttons i approaching behaviour, adjacent node comparison both panels updated simulate change.
the problem happens i click any buttons again. comparison node treeview seems remember formerly comparison node buttons act node. intrepidity previous/next buttons zero burst behind two.
edit - illustration formula demonstrates problem
the markup
<asp:updatepanel id="mytreeviewpanel" runat="server">
<contenttemplate>
<asp:treeview runat="server" id="mytreeview" onselectednodechanged="mytreeview_selectednodechanged">
<selectednodestyle backcolor="#ff8000" />
</asp:treeview>
</contenttemplate>
<triggers>
<asp:asyncpostbacktrigger controlid="mybutton" eventname="click" />
</triggers>
</asp:updatepanel>
<asp:updatepanel id="mylabelpanel" runat="server">
<contenttemplate>
<asp:label runat="server" id="mylabel" text="mylabel"></asp:label>
</contenttemplate>
<triggers>
<asp:asyncpostbacktrigger controlid="mytreeview" eventname="selectednodechanged" />
<asp:asyncpostbacktrigger controlid="mybutton" eventname="click" />
</triggers>
</asp:updatepanel>
<asp:button runat="server" id="mybutton" text="mybutton" onclick="mybutton_click" />
the formula behind
stable vacant page_load ( vigilant sender, eventargs e )
{
( !ispostback )
{
mytreeview.nodes.add( new treenode( "test 1", "test one" ) );
mytreeview.nodes.add( new treenode( "test 2", "test two" ) );
mytreeview.nodes.add( new treenode( "test 3", "test three" ) );
mytreeview.nodes.add( new treenode( "test 4", "test four" ) );
mytreeview.nodes.add( new treenode( "test 5", "test five" ) );
mytreeview.nodes.add( new treenode( "test 6", "test size" ) );
}
}
stable vacant mytreeview_selectednodechanged ( vigilant sender, eventargs e )
{
updatelabel( );
}
stable vacant mybutton_click ( vigilant sender, eventargs e )
{
// here only name unbroken node three
int index = mytreeview.nodes.indexof( mytreeview.selectednode );
mytreeview.nodes[ index + 1 ].select( );
updatelabel( );
}
private vacant updatelabel ( )
{
mylabel.text = mytreeview.selectednode.value;
}
it viewstate tree being saved?
Comments
Post a Comment