Tell me if this is possible.
I have several webpages that have distinct RadGrids in them. I would like to use the export options in a user control instead of having all the code below in each page that contains a Grid.
However, I don't know how to reference the RadGrid in the user controls code behind.
In the User Control ascx
<asp:ImageButton ID="ImageButtonSave" ImageAlign="AbsMiddle" ImageUrl="~/images/13Save.gif" AlternateText="Save Grid Settings" OnClick="ButtonSave_Click" runat="server" /> |
<asp:ImageButton ID="ImageButtonExcel" OnClick="Button1_Click" ImageUrl="~/images/office/xls.gif" AlternateText="Export to Excel" runat="server" /> |
<asp:ImageButton ID="ImageButtonWord" OnClick="Button2_Click" ImageUrl="~/images/office/doc.gif" AlternateText="Export to Word" runat="server" /> |
<asp:ImageButton ID="ImageButtonPDF" OnClick="Button4_Click" ImageUrl="~/images/office/pdf.gif" AlternateText="Export to PDF" runat="server" /> |
In the User Control ascx.cs however, I cannot reference the RadGrid in the aspx page.
protected void Button1_Click(object sender, System.EventArgs e) |
{ |
ConfigureExport(); |
RadGrid1.MasterTableView.ExportToExcel(); |
} |
protected void Button2_Click(object sender, System.EventArgs e) |
{ |
ConfigureExport(); |
RadGrid1.MasterTableView.ExportToWord(); |
} |
protected void Button3_Click(object sender, System.EventArgs e) |
{ |
ConfigureExport(); |
RadGrid1.MasterTableView.ExportToCSV(); |
} |
protected void Button4_Click(object sender, System.EventArgs e) |
{ |
ConfigureExport(); |
RadGrid1.ExportSettings.Pdf.PageHeight = Unit.Parse("200mm"); |
RadGrid1.ExportSettings.Pdf.PageWidth = Unit.Parse("500mm"); |
RadGrid1.MasterTableView.ExportToPdf(); |
} |
public void ConfigureExport() |
{ |
RadGrid1.ExportSettings.ExportOnlyData = true; |
RadGrid1.ExportSettings.IgnorePaging = true; |
RadGrid1.ExportSettings.OpenInNewWindow = true; |
} |
Your help would be appreciated, thank you!