如何在Gridview's页脚模板中设置标签的值?

本文关键字:设置 标签 Gridview | 更新日期: 2023-09-27 18:16:53

我在gridview上有一些标签,我试图将文本设置为页面加载。我固定了"对象引用错误",但是我还没有弄清楚如何动态设置标签文本。下面是我的尝试:

protected string AutoDate, Website;
protected void Page_Load(object sender, EventArgs e)
{
    BindData();
    pnlMainGrid.Visible = true;
    DateTime dtMyDate = DateTime.Now;
    AutoDate = Convert.ToString(dtMyDate);
    Website = "MySite";
    Label lblCreateDate = ((Label)gvMainView.FooterRow.FindControl("lblCreateDate"));
    lblCreateDate.Text = AutoDate;
    Label lblWebsite = ((Label)gvMainView.FooterRow.FindControl("lblWebsite"));
    lblWebsite.Text = Website;
}

我不再得到"对象引用"错误,但我仍然无法动态设置标签的文本。

如何在Gridview's页脚模板中设置标签的值?

正确的做法是:在将网格与数据绑定之后,在Prerender事件中更改Label Text,如下所示:

protected void Page_PreRender(object sender, EventArgs e)
{
      Label lblCreateDate = ((Label)gvMainView.FooterRow.FindControl("lblCreateDate")).Text;
    lblCreateDate.Text = AutoDate;
    Label lblWebsite = ((Label)gvMainView.FooterRow.FindControl("lblWebsite")).Text;
    lblWebsite.Text = Website;
}

预呈现器是你应该在渲染给用户之前操作网格项的地方,否则你必须重新加载。