动态地将多个radgrid添加到包装radgrid并导出到PDF

时间:2019-03-26 07:31:28

标签: pdf export telerik-grid

我想使用RadGrid的内置导出功能将2个RadGrid导出为PDF。我有一个包装网格。我要导出的网格位于UI的不同部分,因此我不想直接在包装器网格中添加网格。在“导出”按钮上单击,我想将“网格”添加到“包装器”网格中并导出到PDF。

我只希望将两个网格都导出到一个pdf文件中。我什至尝试直接在包装器中保留2个网格的完整副本(可见性为false),然后将其导出(将可见性更改为true后)。这没有用,因为未将radgrid的孩子添加到包装中,因为更早地隐藏了父母。

<form runat="server">
    <asp:ScriptManager ID="sm" runat="server"></asp:ScriptManager>
    <telerik:RadButton ID="btnExportToPDF" runat="server" Text="Export To PDF" OnClick="btnExportToPDF_Click"></telerik:RadButton>

    <telerik:RadGrid ID="grdEmployees" runat="server" OnNeedDataSource="grdEmployees_NeedDataSource">
        <MasterTableView AutoGenerateColumns="true">
        </MasterTableView>
    </telerik:RadGrid>
    <telerik:RadGrid ID="grdDepartments" runat="server" OnNeedDataSource="grdDepartments_NeedDataSource">
        <MasterTableView AutoGenerateColumns="true">
        </MasterTableView>
    </telerik:RadGrid>


    <telerik:RadGrid ID="grdMyWrapper" runat="server" ShowHeader="false" Width="550px" BorderStyle="None" OnItemCreated="RadGridWrapper_ItemCreated" Visible="true">
        <ExportSettings OpenInNewWindow="true" ExportOnlyData="false" />
        <MasterTableView AutoGenerateColumns="true" BorderStyle="None">
            <ItemTemplate>
            </ItemTemplate>
        </MasterTableView>
    </telerik:RadGrid>
</form>



protected void RadGridWrapper_ItemCreated(object sender, GridItemEventArgs e)
{
    if (e.Item is GridHeaderItem) e.Item.Visible = false;
}

protected void btnExportToPDF_Click(object sender, EventArgs e)
{
    grdMyWrapper.Items[0].Cells[0].Controls.Add(grdEmployees);
    grdMyWrapper.Items[0].Cells[0].Controls.Add(grdDepartments);
    grdMyWrapper.ExportToPdf();
}

只需要将2个网格从UI导出到单个PDF文件中。网格不在一起,因此将它们直接添加到包装器可能不是一个选择。寻找一种动态添加它们并导出的方法。任何输入都会有很大的帮助。预先感谢。

0 个答案:

没有答案