C# 从页面到C仅导出excel上的网格视图数据#

C# 从页面到C仅导出excel上的网格视图数据#,c#,asp.net,excel,C#,Asp.net,Excel,我正在尝试从页面导出网格视图的数据。但当我将数据导出到excel文件时,它会导出整个页面。我只想导出网格视图的数据。我已经通过几个链接,但没有发现我的自我满足。下面是我的出口代码 Response.Clear(); Response.Buffer = true; Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.xls"); Respons

我正在尝试从页面导出网格视图的数据。但当我将数据导出到excel文件时,它会导出整个页面。我只想导出网格视图的数据。我已经通过几个链接,但没有发现我的自我满足。下面是我的出口代码

  Response.Clear();
        Response.Buffer = true;
        Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.xls");
        Response.Charset = "";
        Response.ContentType = "application/vnd.ms-excel";
        using (StringWriter sw = new StringWriter())
        {
            HtmlTextWriter hw = new HtmlTextWriter(sw);

            //To Export all pages
            gvWorkOrder.AllowPaging = false;
            this.LoadData();

            gvWorkOrder.HeaderRow.BackColor = Color.White;
            foreach (TableCell cell in gvWorkOrder.HeaderRow.Cells)
            {
                cell.BackColor = gvWorkOrder.HeaderStyle.BackColor;
            }
            foreach (GridViewRow row in gvWorkOrder.Rows)
            {
                row.BackColor = Color.White;
                foreach (TableCell cell in row.Cells)
                {
                    if (row.RowIndex % 2 == 0)
                    {
                        cell.BackColor = gvWorkOrder.AlternatingRowStyle.BackColor;
                    }
                    else
                    {
                        cell.BackColor = gvWorkOrder.RowStyle.BackColor;
                    }
                    cell.CssClass = "textmode";
                }
            }

            gvWorkOrder.RenderControl(hw);

            //style to format numbers to string
            string style = @"<style> .textmode { } </style>";
            Response.Write(style);
            Response.Output.Write(sw.ToString());
            Response.Flush();
            Response.End();
        }
                        <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="Print" ID="lnkPrint" CommandName="PrintWorkOrder" CommandArgument='<%#Eval("WorkOrderNo") %>' ></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="تحرير" ID="lnkButton" PostBackUrl='<%# string.Format("~/ServiceManagement/WorkOrderCreation_AR.aspx?WorkOrderID={0}", Eval("WorkOrderNo"))%>'></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>

                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="Location" HeaderText="فرع">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="VendorID" HeaderText="رقم المورد">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerName" HeaderText="اسم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerID" HeaderText="رقم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Left" ItemStyle-ForeColor="#192d98"
                                DataField="Status" HeaderText="حالة الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CreatedOn" DataFormatString="{0:dd/MM/yyyy}" HeaderText="تاريخ الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <%--<asp:HyperLinkField HeaderStyle-HorizontalAlign="Right" DataNavigateUrlFields="ORIGNUMB,ORIGTYPE"
                                Target="_new" DataNavigateUrlFormatString="SalesOrderCreationReport_ar.aspx?Id={0}&Soptype={1}"
                                DataTextField="ORIGNUMB" HeaderText="# وثيقة الاساسي" />--%>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="WorkOrderNo" HeaderText="رقم أمر الصيانة">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                        </Columns>
                        <AlternatingRowStyle BackColor="White" />
                        <EditRowStyle BackColor="#2461BF" />
                        <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
                        <RowStyle BackColor="#EFF3FB" />
                        <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
                        <SortedAscendingCellStyle BackColor="#F5F7FB" />
                        <SortedAscendingHeaderStyle BackColor="#6D95E1" />
                        <SortedDescendingCellStyle BackColor="#E9EBEF" />
                        <SortedDescendingHeaderStyle BackColor="#4870BE" />
                    </asp:GridView>
Response.Clear();
Response.Buffer=true;
AddHeader(“内容处置”、“附件;文件名=GridViewExport.xls”);
响应。Charset=“”;
Response.ContentType=“application/vnd.ms excel”;
使用(StringWriter sw=new StringWriter())
{
HtmlTextWriter hw=新的HtmlTextWriter(sw);
//导出所有页面的步骤
gvWorkOrder.allowpage=false;
这是LoadData();
gvWorkOrder.HeaderRow.BackColor=颜色.白色;
foreach(gvWorkOrder.HeaderRow.Cells中的表格单元格)
{
cell.BackColor=gvWorkOrder.HeaderStyle.BackColor;
}
foreach(gvWorkOrder.Rows中的GridViewRow行)
{
row.BackColor=Color.White;
foreach(行中的表格单元格。单元格)
{
如果(row.RowIndex%2==0)
{
cell.BackColor=gvWorkOrder.AlternatingRowStyle.BackColor;
}
其他的
{
cell.BackColor=gvWorkOrder.RowStyle.BackColor;
}
cell.CssClass=“textmode”;
}
}
gvWorkOrder.渲染控制(hw);
//将数字格式化为字符串的样式
字符串样式=@“.textmode{}”;
回应。写作(风格);
Response.Output.Write(sw.ToString());
Response.Flush();
Response.End();
}
这是我的aspx页面。

                        <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="Print" ID="lnkPrint" CommandName="PrintWorkOrder" CommandArgument='<%#Eval("WorkOrderNo") %>' ></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="تحرير" ID="lnkButton" PostBackUrl='<%# string.Format("~/ServiceManagement/WorkOrderCreation_AR.aspx?WorkOrderID={0}", Eval("WorkOrderNo"))%>'></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>

                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="Location" HeaderText="فرع">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="VendorID" HeaderText="رقم المورد">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerName" HeaderText="اسم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerID" HeaderText="رقم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Left" ItemStyle-ForeColor="#192d98"
                                DataField="Status" HeaderText="حالة الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CreatedOn" DataFormatString="{0:dd/MM/yyyy}" HeaderText="تاريخ الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <%--<asp:HyperLinkField HeaderStyle-HorizontalAlign="Right" DataNavigateUrlFields="ORIGNUMB,ORIGTYPE"
                                Target="_new" DataNavigateUrlFormatString="SalesOrderCreationReport_ar.aspx?Id={0}&Soptype={1}"
                                DataTextField="ORIGNUMB" HeaderText="# وثيقة الاساسي" />--%>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="WorkOrderNo" HeaderText="رقم أمر الصيانة">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                        </Columns>
                        <AlternatingRowStyle BackColor="White" />
                        <EditRowStyle BackColor="#2461BF" />
                        <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
                        <RowStyle BackColor="#EFF3FB" />
                        <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
                        <SortedAscendingCellStyle BackColor="#F5F7FB" />
                        <SortedAscendingHeaderStyle BackColor="#6D95E1" />
                        <SortedDescendingCellStyle BackColor="#E9EBEF" />
                        <SortedDescendingHeaderStyle BackColor="#4870BE" />
                    </asp:GridView>

任何帮助都将不胜感激

安装软件包t并创建如下方法。
                        <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="Print" ID="lnkPrint" CommandName="PrintWorkOrder" CommandArgument='<%#Eval("WorkOrderNo") %>' ></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="تحرير" ID="lnkButton" PostBackUrl='<%# string.Format("~/ServiceManagement/WorkOrderCreation_AR.aspx?WorkOrderID={0}", Eval("WorkOrderNo"))%>'></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>

                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="Location" HeaderText="فرع">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="VendorID" HeaderText="رقم المورد">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerName" HeaderText="اسم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerID" HeaderText="رقم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Left" ItemStyle-ForeColor="#192d98"
                                DataField="Status" HeaderText="حالة الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CreatedOn" DataFormatString="{0:dd/MM/yyyy}" HeaderText="تاريخ الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <%--<asp:HyperLinkField HeaderStyle-HorizontalAlign="Right" DataNavigateUrlFields="ORIGNUMB,ORIGTYPE"
                                Target="_new" DataNavigateUrlFormatString="SalesOrderCreationReport_ar.aspx?Id={0}&Soptype={1}"
                                DataTextField="ORIGNUMB" HeaderText="# وثيقة الاساسي" />--%>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="WorkOrderNo" HeaderText="رقم أمر الصيانة">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                        </Columns>
                        <AlternatingRowStyle BackColor="White" />
                        <EditRowStyle BackColor="#2461BF" />
                        <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
                        <RowStyle BackColor="#EFF3FB" />
                        <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
                        <SortedAscendingCellStyle BackColor="#F5F7FB" />
                        <SortedAscendingHeaderStyle BackColor="#6D95E1" />
                        <SortedDescendingCellStyle BackColor="#E9EBEF" />
                        <SortedDescendingHeaderStyle BackColor="#4870BE" />
                    </asp:GridView>
如何根据要导出到excel工作表的记录创建数据表

                        <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="Print" ID="lnkPrint" CommandName="PrintWorkOrder" CommandArgument='<%#Eval("WorkOrderNo") %>' ></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="تحرير" ID="lnkButton" PostBackUrl='<%# string.Format("~/ServiceManagement/WorkOrderCreation_AR.aspx?WorkOrderID={0}", Eval("WorkOrderNo"))%>'></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>

                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="Location" HeaderText="فرع">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="VendorID" HeaderText="رقم المورد">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerName" HeaderText="اسم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerID" HeaderText="رقم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Left" ItemStyle-ForeColor="#192d98"
                                DataField="Status" HeaderText="حالة الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CreatedOn" DataFormatString="{0:dd/MM/yyyy}" HeaderText="تاريخ الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <%--<asp:HyperLinkField HeaderStyle-HorizontalAlign="Right" DataNavigateUrlFields="ORIGNUMB,ORIGTYPE"
                                Target="_new" DataNavigateUrlFormatString="SalesOrderCreationReport_ar.aspx?Id={0}&Soptype={1}"
                                DataTextField="ORIGNUMB" HeaderText="# وثيقة الاساسي" />--%>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="WorkOrderNo" HeaderText="رقم أمر الصيانة">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                        </Columns>
                        <AlternatingRowStyle BackColor="White" />
                        <EditRowStyle BackColor="#2461BF" />
                        <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
                        <RowStyle BackColor="#EFF3FB" />
                        <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
                        <SortedAscendingCellStyle BackColor="#F5F7FB" />
                        <SortedAscendingHeaderStyle BackColor="#6D95E1" />
                        <SortedDescendingCellStyle BackColor="#E9EBEF" />
                        <SortedDescendingHeaderStyle BackColor="#4870BE" />
                    </asp:GridView>
    public string Export(DataTable dt)
    {
        Workbook workbook = new Workbook();
        Worksheet sheet = new Worksheet(WorkSheetName);
        workbook.Worksheets.Add(sheet);

        // Adding Columns in Sheet
        int c = 0, r = 0;
        foreach (DataColumn column in dt.Columns)
        {
            sheet.Cells[r, c] = new Cell(column.ColumnName);
            c++;
        }

        // Adding Records into sheet
        r = 1;
        for (int i = 0; i < dt.Rows.Count; i++)
        {
            for (c = 0; c < dt.Columns.Count; c++)
            {
                object o = dt.Rows[i][c];
                int ii;
                if (o == DBNull.Value)
                    sheet.Cells[r, c] = new Cell("");
                else if (int.TryParse(o.ToString(), out ii))
                    sheet.Cells[r, c] = new Cell(ii);
                else
                    sheet.Cells[r, c] = new Cell(o);
            }
            r++;
        }

        // Append Extra rows to comfort Open excel > 2003
        if (dt.Rows.Count < MinRow)
        {
            r++;
            for (int i = 0; i < MinRow; i++)
            {
                for (c = 0; c < 50; c++)
                {
                    sheet.Cells[r, c] = new Cell("");
                }
                r++;
            }
        }

        string fileName = Guid.NewGuid().ToString("N") + ".xls";

        if (!Directory.Exists(DestinationRootFolder))
        {
            Directory.CreateDirectory(DestinationRootFolder);
        }

        workbook.Save(fileName);

        return fileName;
    }

注意:您需要在目录中具有写入权限才能写入此excel文件。

我有一个将GridView数据导出(或转换)为excel文件的示例

                        <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="Print" ID="lnkPrint" CommandName="PrintWorkOrder" CommandArgument='<%#Eval("WorkOrderNo") %>' ></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="تحرير" ID="lnkButton" PostBackUrl='<%# string.Format("~/ServiceManagement/WorkOrderCreation_AR.aspx?WorkOrderID={0}", Eval("WorkOrderNo"))%>'></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>

                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="Location" HeaderText="فرع">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="VendorID" HeaderText="رقم المورد">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerName" HeaderText="اسم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerID" HeaderText="رقم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Left" ItemStyle-ForeColor="#192d98"
                                DataField="Status" HeaderText="حالة الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CreatedOn" DataFormatString="{0:dd/MM/yyyy}" HeaderText="تاريخ الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <%--<asp:HyperLinkField HeaderStyle-HorizontalAlign="Right" DataNavigateUrlFields="ORIGNUMB,ORIGTYPE"
                                Target="_new" DataNavigateUrlFormatString="SalesOrderCreationReport_ar.aspx?Id={0}&Soptype={1}"
                                DataTextField="ORIGNUMB" HeaderText="# وثيقة الاساسي" />--%>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="WorkOrderNo" HeaderText="رقم أمر الصيانة">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                        </Columns>
                        <AlternatingRowStyle BackColor="White" />
                        <EditRowStyle BackColor="#2461BF" />
                        <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
                        <RowStyle BackColor="#EFF3FB" />
                        <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
                        <SortedAscendingCellStyle BackColor="#F5F7FB" />
                        <SortedAscendingHeaderStyle BackColor="#6D95E1" />
                        <SortedDescendingCellStyle BackColor="#E9EBEF" />
                        <SortedDescendingHeaderStyle BackColor="#4870BE" />
                    </asp:GridView>

我用iTextSharp使它工作。下面是我的代码:。

开始使用专门的库来创建Excel文件,例如。您现在所做的就是创建一个扩展名为.xls的HTML文件。
                        <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="Print" ID="lnkPrint" CommandName="PrintWorkOrder" CommandArgument='<%#Eval("WorkOrderNo") %>' ></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField ItemStyle-ForeColor="#192d98" HeaderStyle-HorizontalAlign="Right">
                                <ItemTemplate>
                                    <asp:LinkButton runat="server" Text="تحرير" ID="lnkButton" PostBackUrl='<%# string.Format("~/ServiceManagement/WorkOrderCreation_AR.aspx?WorkOrderID={0}", Eval("WorkOrderNo"))%>'></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>

                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="Location" HeaderText="فرع">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="VendorID" HeaderText="رقم المورد">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerName" HeaderText="اسم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CustomerID" HeaderText="رقم العميل">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Left" ItemStyle-ForeColor="#192d98"
                                DataField="Status" HeaderText="حالة الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="CreatedOn" DataFormatString="{0:dd/MM/yyyy}" HeaderText="تاريخ الأمر">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                            <%--<asp:HyperLinkField HeaderStyle-HorizontalAlign="Right" DataNavigateUrlFields="ORIGNUMB,ORIGTYPE"
                                Target="_new" DataNavigateUrlFormatString="SalesOrderCreationReport_ar.aspx?Id={0}&Soptype={1}"
                                DataTextField="ORIGNUMB" HeaderText="# وثيقة الاساسي" />--%>
                            <asp:BoundField HeaderStyle-HorizontalAlign="Right" ItemStyle-ForeColor="#192d98"
                                DataField="WorkOrderNo" HeaderText="رقم أمر الصيانة">
                                <ItemStyle ForeColor="#192D98"></ItemStyle>
                            </asp:BoundField>
                        </Columns>
                        <AlternatingRowStyle BackColor="White" />
                        <EditRowStyle BackColor="#2461BF" />
                        <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
                        <RowStyle BackColor="#EFF3FB" />
                        <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
                        <SortedAscendingCellStyle BackColor="#F5F7FB" />
                        <SortedAscendingHeaderStyle BackColor="#6D95E1" />
                        <SortedDescendingCellStyle BackColor="#E9EBEF" />
                        <SortedDescendingHeaderStyle BackColor="#4870BE" />
                    </asp:GridView>