問題
使用 GridView.RowDataBond事件置換樣板欄位裡的控制項
解決方法
if (e.Row.RowType == DataControlRowType.DataRow)
{
//第2欄的超連結
int i =2;
if (e.Row.Cells[i].Controls[1].GetType() == typeof(LinkButton))
{
if (e.Row.Cells[0].Text.Trim() == "Total")//置換行頭為total的欄位控制項
{
LinkButton lbtn = (LinkButton)e.Row.Cells[i].Controls[1];
Label lbtemp = new Label();
//控制項一定要給id,不然在底下移除時,會移錯控制項
lbtemp.ID = string.Format("lb{0}", DateTime.Now.ToString("yyyyMMddHHmmss"));
lbtemp.Text = lbtn.Text;
e.Row.Cells[i].Controls.Add(lbtemp);
e.Row.Cells[i].Controls.Remove(lbtn);//移除原本控制項
}
}
}
沒有留言:
張貼留言