Dawood Abbas Ответов: 0

Как сделать текстовое значение для столбца в excel загруженным из gridview?


Как сделать текстовое значение для столбца в excel загруженным из gridview это мой код дизайна представления сетки. а код привязки находится на стороне бэкенда.

<asp:GridView ID="gridCustomer" runat="server" 
                onrowdatabound="gridCustomer_RowDataBound" >
                    <HeaderStyle CssClass="FrozenHeader" />

                <Columns>
                    <asp:TemplateField HeaderText="#">
                        <ItemTemplate>                                                              
    <%#Container.DataItemIndex + 1%>                                                
  </ItemTemplate>
  <ItemStyle />     
                    </asp:TemplateField>
                    <asp:BoundField DataField="UserId" HeaderText="Account-No" />
                    <asp:TemplateField HeaderText="Name" >
                        <ItemTemplate>
                            <asp:LinkButton ID="linkName" runat="server" Text='<%#Eval("Name")%>' CommandArgument='<%#Eval("UserId")%>' CommandName="VIEW"></asp:LinkButton>
                        </ItemTemplate>

                    </asp:TemplateField>
                    <asp:BoundField DataField="userName" HeaderText="Card No" />
                    <asp:TemplateField HeaderText="Status">
                        <ItemTemplate>
                            <asp:Label ID="lblStatus" runat="server"  Text='<%#Eval("Status")%>'></asp:Label>
                        </ItemTemplate>

                    </asp:TemplateField>

                    <asp:BoundField DataField="mobno" HeaderText="Mobile" />

                    <asp:BoundField  DataField="TotalAmount_Tax" HeaderText="Balance(Inc.Tax)" />
                    <asp:BoundField DataField="PyingAmount" HeaderText="Last Paid Amount"  />
                    <asp:BoundField DataField="LastPaidDate" HeaderText="Last Paid Date"  />


                    <asp:BoundField DataField="UpdatedDtae" HeaderText="Last Updated Date" />

                    <asp:BoundField DataField="address" HeaderText="Address" />
                    <asp:BoundField DataField="areaname" HeaderText="Area" />
                    <asp:BoundField DataField="subarea" HeaderText="Sub Area" />
                    <asp:BoundField DataField="BoxTypeName" HeaderText="Box Type Name"/>
                    <asp:BoundField DataField="SnNo" HeaderText="STB No" />
                    <asp:BoundField DataField="ChipOrMACId" HeaderText="SIM/MAC No"  />

                    <asp:BoundField DataField="PackagePeriod" HeaderText="Package-Period" />
                    <asp:BoundField DataField="PackageName" HeaderText="Package-Name" />
                    <asp:BoundField DataField="ActivationDate" HeaderText="Activation-Date" />
                    <asp:BoundField DataField="AccountExpiry" HeaderText="Account-Expiry" />
                    <asp:BoundField DataField="EmpName" HeaderText="Attending User" />
                      <asp:BoundField DataField="AadharCard" HeaderText="Aadhar Card" />
                                          <asp:BoundField DataField="NodeName" HeaderText="Node Name" />

                    <asp:BoundField DataField="CreatedDate" HeaderText="Created-Date" />
                        <asp:BoundField DataField="Type_Name" HeaderText="Connection Status" />
                </Columns>
            </asp:GridView> 


И этот приведенный ниже код экспортируется в excel из кода gridview этот метод я вызываю на событие download click.

Response.Clear();
                Response.Buffer = true;
                Response.ClearContent();
                Response.ClearHeaders();
                Response.Charset = "";
                string FileName = "CustomerData" + DateTime.Now + ".xls";
                StringWriter strwritter = new StringWriter();
                HtmlTextWriter htmltextwrtter = new HtmlTextWriter(strwritter);
                Response.Cache.SetCacheability(HttpCacheability.NoCache);
                Response.ContentType = "application/vnd.ms-excel";
                Response.AddHeader("Content-Disposition", "attachment;filename=" + FileName);
                gridCustomer.GridLines = GridLines.Both;
                gridCustomer.HeaderStyle.Font.Bold = true;
                gridCustomer.RenderControl(htmltextwrtter);
                Response.Write(strwritter.ToString());
                Response.End();


Что я уже пробовал:

Я попробовал, как показано ниже
Response.Write("<style>.text { mso-number-format:\\@; } </style>");


и как ниже

<style type="text/css">
                    .text{
                      mso-number-format:"\@";/*force text*/
                    }

                </style>
<pre><asp:BoundField DataField="SnNo" HeaderText="STB No" ControlStyle-CssClass="text"/>

0 Ответов