Everytime I click a header in the detailtable to sort, the entire detail table collapses. Am I doing something wrong? Most of the code I have are just copy paste from the demos.
<telerik:RadGrid ID="grdDataView" runat="server" EnableEmbeddedBaseStylesheet="false"
onprerender="grdDataView_PreRender" ShowStatusBar="false" OnNeedDataSource="grdDataView_OnNeedDataSource"
AutoGenerateColumns="False" PageSize="4" AllowSorting="True" AllowMultiRowSelection="False" PagerStyle-ShowPagerText="false"
AllowPaging="True" GridLines="None" EnableEmbeddedSkins="false" Skin="emmawebskin" Width="3500px" PagerStyle-Font-Underline="false"
ondetailtabledatabind="grdDataView_DetailTableDataBind" OnSortCommand="grdDataView_OnSortCommand">
<PagerStyle Mode="NumericPages"></PagerStyle>
<MasterTableView DataKeyNames="MODELID" AllowMultiColumnSorting="false">
<DetailTables>
<telerik:GridTableView DataKeyNames="EquipmentID" Width="100%"
runat="server">
<Columns>
<telerik:GridBoundColumn SortExpression="XXXXXXXX" HeaderText="XXXXXXXX" HeaderButtonType="TextButton"
DataField="XXXXXXXX" UniqueName="XXXXXXXX">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn SortExpression="XXXXXXXX" HeaderText="XXXXXXXX" HeaderButtonType="TextButton"
DataField="XXXXXXXX" UniqueName="XXXXXXXX">
</Columns>
<SortExpressions>
<telerik:GridSortExpression FieldName="XXXXXXXX"></telerik:GridSortExpression>
</SortExpressions>
</telerik:GridTableView>
</DetailTables>
<Columns>
<telerik:GridBoundColumn SortExpression="XXXX" HeaderText="XXXX" HeaderButtonType="TextButton"
DataField="XXXX" UniqueName="XXXX" >
</telerik:GridBoundColumn>
<telerik:GridBoundColumn SortExpression="XXXXXX" HeaderText="XXXXXX" HeaderButtonType="TextButton"
DataField="XXXXXX" UniqueName="XXXXXX" Visible="false">
</telerik:GridBoundColumn>
</Columns>
<SortExpressions>
<telerik:GridSortExpression FieldName="XXXX"></telerik:GridSortExpression>
</SortExpressions>
</MasterTableView>
</telerik:RadGrid>
protected void grdDataView_OnSortCommand(object source, GridSortCommandEventArgs e)
{
GridSortExpression sortExpr = new GridSortExpression();
switch (e.OldSortOrder)
{
case GridSortOrder.None:
sortExpr.FieldName = e.SortExpression;
sortExpr.SortOrder = GridSortOrder.Ascending;
e.Item.OwnerTableView.SortExpressions.AddSortExpression(sortExpr);
break;
case GridSortOrder.Ascending:
sortExpr.FieldName = e.SortExpression;
sortExpr.SortOrder = GridSortOrder.Descending;
e.Item.OwnerTableView.SortExpressions.AddSortExpression(sortExpr);
break;
case GridSortOrder.Descending:
sortExpr.FieldName = e.SortExpression;
sortExpr.SortOrder = GridSortOrder.Ascending;
e.Item.OwnerTableView.SortExpressions.AddSortExpression(sortExpr);
break;
}
e.Canceled = true;
grdDataView.Rebind();
}