我有一个GridView,我正在转换为Excel电子表格。我希望第一列计算行数,即如果电子表格中有10行,则第一列应显示1到10.但是现在电子表格只显示所有列的最后一个数字。因此,如果excel有10行,则每行的数字为10,而不是从1开始计算。
int Sno = 1;
for (Sno = 1; Sno < ds.Tables[0].Rows.Count; Sno++)
{
Sno++;
}
downloadcsv.WriteLine("\"" + Sno + "\",\"" +
dr["CustomerName"].ToString() + "\",\"" +
dr["invoiceno"].ToString() + "\","
);
答案 0 :(得分:1)
你有一个循环计算每一行,但你没有在循环中设置任何值。您只在循环后设置一个值。所以你当然只设置最后一行的数字。
您需要为循环体内的每一行设置数据。
抱歉,我已经为您勾勒出代码,但我无法确切地告诉您downloadcsv
是什么或为什么在地球上您使用WriteLine()
就像那样
答案 1 :(得分:0)
简单添加&#34;序列号&#34;在gridview列中本身没有使用任何计数器,
<asp:TemplateField HeaderText="S#" >
<ItemTemplate>
<%# Container.DataItemIndex + 1 %>
</ItemTemplate>
</asp:TemplateField>
如果没有向用户显示,请使用
<asp:TemplateField HeaderText="S#" Visible="False">
<ItemTemplate>
<%# Container.DataItemIndex + 1 %>
</ItemTemplate>
</asp:TemplateField>