gpt4 book ai didi

c# - 如何从 GridView 中的模板字段中获取值?

转载 作者:太空狗 更新时间:2023-10-29 18:16:29 25 4
gpt4 key购买 nike

这是我对 GridView 的标记。

<Columns>
<asp:TemplateField HeaderText="Customer Name">
<ItemTemplate>
<asp:Label ID="lblname" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Customer.Name")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="PickUpPoint">
<ItemTemplate>
<asp:Label ID="lblPickUpPoint" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Pickuppoint")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>

我有一个按钮,用于将值存储在 excel 对象的工作表单元格中。

for (int i = 0; i < GridView2.Rows.Count; i++)
{
for (int j = 0; j < GridView2.Rows[i].Cells.Count; j++)
{
xlWorkSheet.Cells[i + 1, j + 1] = GridView2.Rows[i].Cells[j].Text;
}
}

如何获取 GridView 的值并将其存储在工作表中,因为 GridView2.Rows[i].Cells[j].Text 返回空字符串。

最佳答案

您缺少类型转换。这样做——

Label name = (Label)GridView2.Rows[i].Cells[j].FindControl("lblname");
xlWorkSheet.Cells[i + 1, j + 1] = name.Text;

Update- 如果您可以将标签命名为 Label0 和 Label1,那么在第二个 for 循环中-

for (int j = 0; j < GridView2.Rows[i].Cells.Count; j++)
{
Label xyz = (Label)GridView2.Rows[i].Cells[j].FindControl("Label"+j);
xlWorkSheet.Cells[i + 1, j + 1] = xyz.Text;
}

对于标题文本 - string hText = GridView2.HeaderRow.Cells[您的列号].Text;

关于c# - 如何从 GridView 中的模板字段中获取值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13795468/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com