2010-08-04 37 views
1

我有一個gridview,我出口到excel文件。當我打開excel文件時,交替行顏色會延伸到excel表格的末尾,但我只希望我的6個數據列被格式化。我怎樣才能限制格式?將gridview導出到xls時,整行被格式化。我怎麼能限制這個到我的gridview列

我的GridView:

<asp:GridView ID="grdExportable" runat="server" BackColor="White" ForeColor="Black" 
          Width="1100px" AutoGenerateColumns="False" Visible="False"> 
           <PagerSettings Mode="NumericFirstLast" /> 
           <Columns> 
            <asp:BoundField DataField="ActivityDateTime" HeaderText="Date/Time" /> 
            <asp:BoundField DataField="TestName" HeaderText="TestName" /> 
            <asp:BoundField DataField="RoundSerialNumber" HeaderText="RoundSerialNumber"/> 
            <asp:BoundField DataField="RoundType" HeaderText="RoundType"/> 
            <asp:BoundField DataField="LotNumber" HeaderText="Lot/StockNumber" /> 
            <asp:BoundField DataField="Notes" HeaderText="Notes" /> 
           </Columns> 
           <SelectedRowStyle BackColor="#000099" Font-Bold="True" ForeColor="White" /> 
           <HeaderStyle BackColor="#6C0000" Font-Bold="True" ForeColor="White" /> 
           <AlternatingRowStyle BackColor="#CCCCCC"/> 
          </asp:GridView> 

我導出方法,

private void ExportGridView() 
    { 
     string attachment = "attachment; filename=Activity Report.xls"; 
     Response.ClearContent(); 
     Response.AddHeader("content-disposition", attachment); 
     Response.ContentType = "application/ms-excel"; 
     StringWriter sw = new StringWriter(); 
     HtmlTextWriter htw = new HtmlTextWriter(sw); 
     grdExportable.Visible = true; 
     grdExportable.RenderControl(htw); 
     grdExportable.Visible = false; 
     Response.Write(sw.ToString()); 
     Response.End(); 
    } 

回答

1

那麼你是不是真的「導出到Excel」你,你是發送一個HTML表格到瀏覽器與內容應用程序類型/ ms-excel爲了獲得excel打開它並利用excel將其顯示爲電子表格這一事實。如果你想要這種精細的excel格式控制級別,你需要生成一個實際的excel文件。