May 06, 2012, 1:18 PM
TreeGrid selection model not working, SelectedNode is always null
Im using a TreeGrid control for displaying heirarchial data. So far its qworking fine. But I want to perform some tasks when the user selects any node. here is the code for my treegrid
`<ext:TreeGrid ID="treAccounts" runat="server" Height="570" AutoWidth="true" Title="Accounts">
<TopBar>
<ext:Toolbar runat="server" AutoWidth="true">
<Items>
</Items>
</ext:Toolbar>
</TopBar>
<Columns>
<ext:TreeGridColumn DataIndex="Code" Header="Code" Width="100" />
<ext:TreeGridColumn DataIndex="Account" Header="AccountTitle" Width="400" />
<ext:TreeGridColumn DataIndex="Status" Header="Status" Width="100" />
<ext:TreeGridNumberColumn DataIndex="Amount" Header="Amount" Width="100" />
</Columns>
<Root>
<ext:TreeNode Text="hello world" AllowChildren="true" Expanded="true" />
</Root>
<BottomBar>
<ext:PagingToolbar runat="server" PageSize="20" AutoWidth="true" />
</BottomBar>
<SelectionModel>
<ext:DefaultSelectionModel runat="server">
<DirectEvents>
<SelectionChange OnEvent="Evt_Select">
<ExtraParams>
<ext:Parameter Name="id" Value="22" />
</ExtraParams>
</SelectionChange>
</DirectEvents>
</ext:DefaultSelectionModel>
</SelectionModel>
<DirectEvents>
<DblClick OnEvent="Evt_Edit" />
</DirectEvents>
</ext:TreeGrid>`
On the code behind I have the following code:
protected void Evt_Select(object sender, DirectEventArgs args)
{
try
{
int id = Convert.ToInt32((treAccounts.SelectionModel.Primar y as DefaultSelectionModel).SelectedNode.NodeID);
Boxes.Info(string.Format("{0} selected", id));
}
catch (Exception ex)
{
Boxes.Error(ex);
}
}
The problem is that the SelectedNode is always null. Any cluees what mistakes I'm making here?
`<ext:TreeGrid ID="treAccounts" runat="server" Height="570" AutoWidth="true" Title="Accounts">
<TopBar>
<ext:Toolbar runat="server" AutoWidth="true">
<Items>
</Items>
</ext:Toolbar>
</TopBar>
<Columns>
<ext:TreeGridColumn DataIndex="Code" Header="Code" Width="100" />
<ext:TreeGridColumn DataIndex="Account" Header="AccountTitle" Width="400" />
<ext:TreeGridColumn DataIndex="Status" Header="Status" Width="100" />
<ext:TreeGridNumberColumn DataIndex="Amount" Header="Amount" Width="100" />
</Columns>
<Root>
<ext:TreeNode Text="hello world" AllowChildren="true" Expanded="true" />
</Root>
<BottomBar>
<ext:PagingToolbar runat="server" PageSize="20" AutoWidth="true" />
</BottomBar>
<SelectionModel>
<ext:DefaultSelectionModel runat="server">
<DirectEvents>
<SelectionChange OnEvent="Evt_Select">
<ExtraParams>
<ext:Parameter Name="id" Value="22" />
</ExtraParams>
</SelectionChange>
</DirectEvents>
</ext:DefaultSelectionModel>
</SelectionModel>
<DirectEvents>
<DblClick OnEvent="Evt_Edit" />
</DirectEvents>
</ext:TreeGrid>`
On the code behind I have the following code:
protected void Evt_Select(object sender, DirectEventArgs args)
{
try
{
int id = Convert.ToInt32((treAccounts.SelectionModel.Primar y as DefaultSelectionModel).SelectedNode.NodeID);
Boxes.Info(string.Format("{0} selected", id));
}
catch (Exception ex)
{
Boxes.Error(ex);
}
}
The problem is that the SelectedNode is always null. Any cluees what mistakes I'm making here?