我在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;
}
被修改
我不再获得"对象参考"但是我仍然无法动态设置标签的文本。
答案 0 :(得分:0)
正确的方法是在将网格与数据绑定后,在Prerender事件中更改标签文本,如下所示:
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;
}
prerender是您应该在将网格项呈现给用户之前始终操作网格项的地方,否则您将不得不重新加载。