ASPxClientTreeList.GetNodeState(nodeKey) Method
Returns the specified node’s state.
Declaration
GetNodeState(
nodeKey: string
): string
Parameters
Name | Type | Description |
---|---|---|
nodeKey | string | A String value that identifies the node. |
Returns
Type | Description |
---|---|
string | A String value that represents the specified node’s state. |
Remarks
The GetNodeState method returns the following values:
- NotFound - the specified node was not found;
- Collapsed - the specified node is collapsed;
- Expanded - the specified node is expanded;
- Child - the specified node has no child nodes.
Example
This example demonstrates how to use the GetFocusedNodeKey method to expand and collapse tree nodes based on the state of a node (collapsed or expanded). You can get the node state by calling the GetNodeState(nodeKey)
method in the FocusedNodeChanged event.
Demo limitation: if you close the topmost parent node and do not have other nodes except that one, you will have to expand this node by clicking the Expand Button.
<script>
function OnFocusedNodeChange(s, e) {
var nodeKey = s.GetFocusedNodeKey();
var nodeState = s.GetNodeState(nodeKey);
if (nodeState === "Collapsed")
s.ExpandNode(nodeKey);
else if (nodeState === "Expanded")
s.CollapseNode(nodeKey);
};
</script>
<dx:ASPxTreeList ID="TreeList"
runat="server"
AutoGenerateColumns="False"
DataSourceID="ProductsDataSource"
KeyFieldName="EmployeeID"
ParentFieldName="ReportsTo"
Width="50%">
<Columns>
<dx:TreeListTextColumn FieldName="EmployeeID" VisibleIndex="0" ReadOnly="true"></dx:TreeListTextColumn>
<dx:TreeListTextColumn FieldName="LastName" VisibleIndex="1"></dx:TreeListTextColumn>
<dx:TreeListTextColumn FieldName="FirstName" VisibleIndex="2"></dx:TreeListTextColumn>
</Columns>
<SettingsBehavior AllowFocusedNode="true" FocusNodeOnLoad="false" />
<ClientSideEvents FocusedNodeChanged="OnFocusedNodeChange" />
</dx:ASPxTreeList>
<br />
<asp:AccessDataSource ID="ProductsDataSource" runat="server"
DataFile="~/App_Data/nwind.mdb"
SelectCommand="SELECT [EmployeeID], [LastName], [FirstName], [ReportsTo] FROM [Employees]">
</asp:AccessDataSource>
See Also