ASPxTreeView.ExpandedChanging Event
Fires before the expansion state of a node is changed by end-user interaction.
Namespace: DevExpress.Web
Assembly: DevExpress.Web.v24.1.dll
NuGet Package: DevExpress.Web
Declaration
Event Data
The ExpandedChanging event's data class is TreeViewNodeCancelEventArgs. The following properties provide information specific to this event:
Property | Description |
---|---|
Cancel | Gets or sets a value indicating whether the action that raised the event should be canceled. |
Node | Gets a node object related to the event. Inherited from TreeViewNodeEventArgs. |
Remarks
Write an ExpandedChanging event handler to perform specific actions before each time a node’s expansion state is changed by end-user interaction. You can use the event parameter’s properties to identify the node being manipulated and cancel execution of the command, if necessary.
Example
The sample code below represents an ExpandedChanging
event handler. The event handler prevents collapsing nodes if it has selected children in any generation.
<dx:ASPxTreeView ID="ASPxTreeView1" runat="server" DataSourceID="XmlDataSource1" AutoPostBack="True"
AllowSelectNode="True" OnExpandedChanging="ASPxTreeView1_ExpandedChanging" />
<asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/App_Data/MenuTabbedMenu.xml"
XPath="/mainmenu/item"></asp:XmlDataSource>
protected void ASPxTreeView1_ExpandedChanging(object source, DevExpress.Web.ASPxTreeView.TreeViewNodeCancelEventArgs e) {
if ((e.Node.Expanded) && (ASPxTreeView1.SelectedNode != null)) {
TreeViewNode node = ASPxTreeView1.SelectedNode.Parent;
while (node != null) {
if (e.Node == node) {
e.Cancel = true;
break;
}
node = node.Parent;
}
}
}