我在这里阅读了很多帖子以寻找答案。但无论我做什么,我总是会为我的标签返回一个空值。
我可以很好地填充它并在那时阅读它,但是当我尝试阅读标签以填充 DB 时,它始终为空。
asp代码:
<asp:TemplateField HeaderText="TOTAL YIELD" ItemStyle-HorizontalAlign="Center" HeaderStyle-Width="130">
<EditItemTemplate>
<asp:Label ID="lb_TotalYield" runat="server" ></asp:Label>
</EditItemTemplate>
</asp:TemplateField>
在后面的代码中,我只是想阅读它。
foreach (GridViewRow currentRow in gv_Fruit.Rows)
{
Label tempLabel = (Label)currentRow.FindControl("lb_TotalValue") as Label;
string theTotalValue = tempLabel.Text;
}
完整信息这是我设置标签的方式:
myGridView.SelectedRow.Cells[4].Text = myTotalYield;
我试过做一个 gv_RowDataBound,但它似乎从来没有被调用过。
protected void gv_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (myGridView.EditIndex == e.Row.RowIndex &&
e.Row.RowType == DataControlRowType.DataRow)
{
Label mylabel = (Label)e.Row.FindControl("lb_TotalYield");
mylabel.DataBind();
}
}