3 Answers, 1 is accepted
0
Jayesh Goyani
Top achievements
Rank 2
answered on 26 Jul 2013, 12:52 PM
Hello,
1.
Please use "needdatasource" event to bind the data in radgrid. Please check below link for demo.
Grid - Advanced Data Binding
OR
2.
Thanks,
Jayesh Goyani
1.
Please use "needdatasource" event to bind the data in radgrid. Please check below link for demo.
Grid - Advanced Data Binding
OR
2.
protected void RadGrid1_ItemCommand(object sender, GridCommandEventArgs e) { if (e.CommandName == RadGrid.EditCommandName) { RadGrid1.DataSource = ""; // please assign your datasource here RadGrid1.DataBind(); } }Thanks,
Jayesh Goyani
0
Rahul
Top achievements
Rank 1
answered on 26 Jul 2013, 02:22 PM
No dude not working. still having same issue. If i rebind grid then i am facing isssue with expand collpase option
0
Princy
Top achievements
Rank 2
answered on 29 Jul 2013, 04:39 AM
Hi Rahul,
Please try the below code snippet and check if this helps,else please provide your full code.
ASPX:
C#:
Thanks,
Princy
Please try the below code snippet and check if this helps,else please provide your full code.
ASPX:
<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" PageSize="7" AllowSorting="True" AllowPaging="True" OnDetailTableDataBind="RadGrid1_DetailTableDataBind" OnNeedDataSource="RadGrid1_NeedDataSource" onitemcommand="RadGrid1_ItemCommand" AutoGenerateEditColumn="true"> <PagerStyle Mode="NumericPages"></PagerStyle> <MasterTableView DataKeyNames="CustomerID" AllowMultiColumnSorting="True" HierarchyLoadMode="ServerOnDemand"> <DetailTables> <telerik:GridTableView DataKeyNames="OrderID" Name="Orders" Width="100%" AllowFilteringByColumn="true"> <DetailTables> <telerik:GridTableView DataKeyNames="OrderID" Name="OrderDetails" AllowFilteringByColumn="false"> <Columns> <telerik:GridBoundColumn SortExpression="UnitPrice" HeaderText="Unit Price" HeaderButtonType="TextButton" DataField="UnitPrice"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Quantity" HeaderText="Quantity" HeaderButtonType="TextButton" DataField="Quantity"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Discount" HeaderText="Discount" HeaderButtonType="TextButton" DataField="Discount"> </telerik:GridBoundColumn> </Columns> </telerik:GridTableView> </DetailTables> <Columns> <telerik:GridBoundColumn SortExpression="OrderID" HeaderText="OrderID" HeaderButtonType="TextButton" DataField="OrderID"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="OrderDate" HeaderText="Date Ordered" HeaderButtonType="TextButton" DataField="OrderDate" UniqueName="OrderDate" DataFormatString="{0:D}"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Freight" HeaderText="Freight" HeaderButtonType="TextButton" DataField="Freight" UniqueName="Freight"> </telerik:GridBoundColumn> </Columns> </telerik:GridTableView> </DetailTables> <Columns> <telerik:GridBoundColumn SortExpression="CustomerID" HeaderText="CustomerID" HeaderButtonType="TextButton" DataField="CustomerID"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="ContactName" HeaderText="Contact Name" HeaderButtonType="TextButton" DataField="ContactName"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="CompanyName" HeaderText="Company" HeaderButtonType="TextButton" DataField="CompanyName"> </telerik:GridBoundColumn> </Columns> </MasterTableView> <ClientSettings EnablePostBackOnRowClick="true" ></ClientSettings> </telerik:RadGrid>C#:
protected void RadGrid1_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e) { if (!e.IsFromDetailTable) { RadGrid1.DataSource = GetDataTable("SELECT * FROM Customers"); } }protected void RadGrid1_DetailTableDataBind(object source, Telerik.Web.UI.GridDetailTableDataBindEventArgs e){ GridDataItem dataItem = (GridDataItem)e.DetailTableView.ParentItem; switch (e.DetailTableView.Name) { case "Orders": { string CustomerID = dataItem.GetDataKeyValue("CustomerID").ToString(); e.DetailTableView.DataSource = GetDataTable("SELECT * FROM Orders"); break; } case "OrderDetails": { string OrderID = dataItem.GetDataKeyValue("OrderID").ToString(); e.DetailTableView.DataSource = GetDataTable("SELECT * FROM [Order Details] WHERE OrderID = " + OrderID); break; } } } public DataTable GetDataTable(string query) { String ConnString = ConfigurationManager.ConnectionStrings["Northwind_newConnectionString3"].ConnectionString; SqlConnection conn = new SqlConnection(ConnString); SqlDataAdapter adapter = new SqlDataAdapter(); adapter.SelectCommand = new SqlCommand(query, conn); DataTable myDataTable = new DataTable(); conn.Open(); try { adapter.Fill(myDataTable); } finally { conn.Close(); } return myDataTable; }protected void RadGrid1_ItemCommand(object sender, GridCommandEventArgs e){ if (e.CommandName == "RowClick") { GridDataItem item=(GridDataItem)e.Item; value = item.GetDataKeyValue("CustomerID").ToString(); foreach (GridItem item1 in e.Item.OwnerTableView.Items) { if (!(item.Expanded) && (item == e.Item)) { item.Expanded = true; } } }}Thanks,
Princy