I have used the NestedView several times but this is the first time I see this error.
I have a RadChar and a RadGrid in the nested and when I click on any row at first time, then the nested doesn't open, but after, I can open all nested.
ASPX
CS
Or try
CS
I have a RadChar and a RadGrid in the nested and when I click on any row at first time, then the nested doesn't open, but after, I can open all nested.
- I tried change de databind of radchart on OnItemCommand and but not work
- If I remove de ajax it works prefectly
- The subRadGrid created in the nested work, and do databind in the OnItemDataBound correctly
ASPX
<telerik:RadGrid ID="RadGridInfoRecharges" OnItemCommand="RadGridInfoRecharges_ItemCommand" OnItemDataBound="RadGrid1_ItemDataBound" Skin="Default" runat="server" AutoGenerateColumns="False" AllowPaging="True" GridLines="Horizontal" CssClass="groupBox"> <ExportSettings ExportOnlyData="false" FileName="Recharges" IgnorePaging="true" OpenInNewWindow="True"> <Csv ColumnDelimiter="Semicolon" /> </ExportSettings> <MasterTableView DataSourceID="ObjectDataSourceGetRecharges" PageSize="50" DataKeyNames="OwnerId"> <NestedViewTemplate> <asp:Panel ID="NestedViewPanel" CssClass="InfoRechargesDetails" runat="server" > <telerik:RadGrid ID="RadGridInfoRechargesNested" Skin="Default" runat="server" AutoGenerateColumns="False" AllowPaging="False" GridLines="Horizontal"> <MasterTableView> <Columns> <telerik:GridBoundColumn HeaderText="Credit" DataFormatString="{0:N0}" DataField="Credit" UniqueName="Credit"></telerik:GridBoundColumn> </Columns> </MasterTableView> </telerik:RadGrid> <telerik:RadChart ID="rcRechargesStatisticsRecharges" Width="900" Height="300" runat="server" DefaultType="Line" Legend-Appearance-Visible="false" Legend-Visible="false" BorderWidth="0"> </telerik:RadChart> </asp:Panel> </NestedViewTemplate> <ExpandCollapseColumn Visible="True"></ExpandCollapseColumn> <Columns> <telerik:GridBoundColumn HeaderText="OwnerId" ItemStyle-HorizontalAlign="Right" DataField="OwnerId" UniqueName="OwnerId"></telerik:GridBoundColumn> </Columns> </MasterTableView> </telerik:RadGrid>CS
ItemDataBoundprotected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item is GridNestedViewItem) { int OwnerId = ((RechargeItemByContract)e.Item.DataItem).OwnerId; RadChart rcRechargesStatisticsRecharges = (RadChart)e.Item.FindControl("rcRechargesStatisticsRecharges"); RadChart rcRechargesStatisticsPrices = (RadChart)e.Item.FindControl("rcRechargesStatisticsPrices"); // DATA List<RechargeItemLite> Data = RechargesBLL.GetRechargeItemLite(OwnerId); if (Data.Count > 1) { rcRechargesStatisticsRecharges.PlotArea.XAxis.Appearance.ValueFormat = Telerik.Charting.Styles.ChartValueFormat.ShortDate; rcRechargesStatisticsRecharges.PlotArea.XAxis.Appearance.LabelAppearance.RotationAngle = 45; rcRechargesStatisticsRecharges.PlotArea.XAxis.AutoScale = false; rcRechargesStatisticsRecharges.PlotArea.XAxis.IsZeroBased = false; rcRechargesStatisticsRecharges.Legend.Visible = false; rcRechargesStatisticsRecharges.ChartTitle.TextBlock.Text = "Creditos por recarga"; rcRechargesStatisticsRecharges.DataSource = Data; double steps = (Data[0].OADate - Data[Data.Count - 1].OADate) / Data.Count; rcRechargesStatisticsRecharges.PlotArea.XAxis.AddRange(Data[Data.Count - 1].OADate, Data[0].OADate, steps); rcRechargesStatisticsRecharges.DataBind(); rcRechargesStatisticsRecharges.Series[0].DataXColumn = "OADate"; rcRechargesStatisticsRecharges.Series[1].Visible = false; rcRechargesStatisticsRecharges.Series[2].Visible = false; rcRechargesStatisticsRecharges.Visible = true; } else rcRechargesStatisticsRecharges.Visible = false;Or try
CS
ItemComman protected void RadGridInfoRecharges_ItemCommand(object source, GridCommandEventArgs e) { // cazar el evento del expand/collapse if (e.CommandName == RadGrid.ExpandCollapseCommandName) { // Si el nestview no esta expandido significa que ahora es se expandera if (!e.Item.Expanded) { #region declaraciones controles RadGrid RadGridInfoRechargesNested = (RadGrid)((GridDataItem)e.Item).ChildItem.FindControl("RadGridInfoRechargesNested"); RadChart rcRechargesStatisticsRecharges = (RadChart)((GridDataItem)e.Item).ChildItem.FindControl("rcRechargesStatisticsRecharges"); RadChart rcRechargesStatisticsPrices = (RadChart)((GridDataItem)e.Item).ChildItem.FindControl("rcRechargesStatisticsPrices"); #endregion // Extraemos la información de DataKeyValue desde la grid principal int OwnerId = (int)((GridDataItem)e.Item).GetDataKeyValue("OwnerId"); // DATA List<RechargeItemLite> Data = RechargesBLL.GetRechargeItemLite(OwnerId); RadGridInfoRechargesNested.DataSource = Data; RadGridInfoRechargesNested.DataBind(); if (Data.Count > 1) { rcRechargesStatisticsRecharges.PlotArea.XAxis.Appearance.ValueFormat = Telerik.Charting.Styles.ChartValueFormat.ShortDate; rcRechargesStatisticsRecharges.PlotArea.XAxis.Appearance.LabelAppearance.RotationAngle = 45; rcRechargesStatisticsRecharges.PlotArea.XAxis.AutoScale = false; rcRechargesStatisticsRecharges.PlotArea.XAxis.IsZeroBased = false; rcRechargesStatisticsRecharges.Legend.Visible = false; rcRechargesStatisticsRecharges.ChartTitle.TextBlock.Text = "Creditos por recarga"; rcRechargesStatisticsRecharges.DataSource = Data; double steps = (Data[0].OADate - Data[Data.Count - 1].OADate) / Data.Count; rcRechargesStatisticsRecharges.PlotArea.XAxis.AddRange(Data[Data.Count - 1].OADate, Data[0].OADate, steps); rcRechargesStatisticsRecharges.DataBind(); rcRechargesStatisticsRecharges.Series[0].DataXColumn = "OADate"; rcRechargesStatisticsRecharges.Series[1].Visible = false; rcRechargesStatisticsRecharges.Series[2].Visible = false; rcRechargesStatisticsRecharges.Visible = true; } else rcRechargesStatisticsRecharges.Visible = false;