私はasp.nettreeViewを持っています。拡張されたノードで、拡張されたノードの子ノードをバインドしています。しかし、ノードをチェックして展開すると、ノードとそのすべての子がその位置を変更し、メインノードの子のようになります。+をもう一度クリックすると、適切な場所に移動します。それを解決する方法についてのアイデア!!!
これがupdatePanelのツリーです
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:TreeView ID="MyTreeView" runat="server" ImageSet="XPFileExplorer" NodeIndent="15"
OnTreeNodeExpanded="MyTreeView_TreeNodeExpanded">
<HoverNodeStyle Font-Underline="True" ForeColor="#6666AA" />
<NodeStyle Font-Names="Tahoma" Font-Size="8pt" ForeColor="Black" HorizontalPadding="2px"
NodeSpacing="0px" VerticalPadding="2px" />
<ParentNodeStyle Font-Bold="False" />
<SelectedNodeStyle BackColor="#B5B5B5" Font-Underline="False" HorizontalPadding="0px"
VerticalPadding="0px" />
</asp:TreeView>
</ContentTemplate>
</asp:UpdatePanel>
背後のコードから:ページの読み込み時に私は持っています:
if (!this.IsPostBack)
{
this.MyTreeView.ShowCheckBoxes = TreeNodeTypes.All;
this.MyTreeView.ShowLines = true;
FillTree();//custom method just to fill the tree
}
と
protected void MyTreeView_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
{
TreeNode expandedNode = e.Node;
if (expandedNode.Value != "-1" && expandedNode.Value == "-2")
{
//Some logic
}
}
前もって感謝します