/// <summary>
/// gridview模板类重写
/// </summary>
public class GvPlanTemplate : ITemplate
{
/// <summary>
/// 构造函数
/// </summary>
public GvPlanTemplate() { }
/// <summary>
/// 模板添加子控件
/// </summary>
public void InstantiateIn(System.Web.UI.Control container) { }
}
/// <summary>
/// gridview数据绑定
/// </summary>
public void gvPlanDetailBind()
{
this.gvPlanDetail.Columns.Clear();
this.gvPlanDetail.DataSource = CreatePlanTable();
this.gvPlanDetail.DataBind();
}
/// <summary>
/// gridview动态添加行列
/// </summary>
/// <returns>DataTable</returns>
public DataTable CreatePlanTable()
{
DataTable dt = new DataTable();
DataRow dr;
TemplateField field;
DataColumn dc;
int rowCount = 10,colCount= 10;
//动态添加行
for (int ix = 0; ix < rowCount; ++ix)
{
dr = dt.NewRow();
dt.Rows.Add(dr);
}
//动态添加列
for (int ix = 0; ix < colCount; ++ix)
{
field = new TemplateField();
field.HeaderText = “测试”;
field.ItemTemplate = new GvPlanTemplate();
gvPlanDetail.Columns.Add(field);
}
return dt;
}
/// <summary>
/// 生成行事件添加列控件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void gvPlanDetail_RowCreated(object sender, GridViewRowEventArgs e)
{
int rowCount = 10,colCount= 10;
//动态添加TextBox
for (int ix = 0; ix < colCount; ++ix)
{
TextBoxTemplateGenerate("测试", ix, e);
}
}
/// <summary>
/// 行数据绑定事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void gvPlanDetail_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
}
}
/// 生成行事件添加列控件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void gvPlanDetail_RowCreated(object sender, GridViewRowEventArgs e)
{
int rowCount = 10,colCount= 10;
//动态添加TextBox
for (int ix = 0; ix < colCount; ++ix)
{
TextBoxTemplateGenerate("测试", ix, e);
}
}
/// <summary>
/// 行数据绑定事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void gvPlanDetail_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
}
}
/// <summary>
/// 动态添加TextBox控件
/// </summary>
/// <param name="id">控件ID</param>
/// <param name="cellIndex">控件列数</param>
/// <param name="e"></param>
protected void TextBoxTemplateGenerate(string id, int cellIndex, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
TextBox tb = new TextBox();
tb.ID = id;
tb.Text = "测试";
e.Row.Cells[cellIndex].Controls.Add(tb);
}
}
/// 动态添加TextBox控件
/// </summary>
/// <param name="id">控件ID</param>
/// <param name="cellIndex">控件列数</param>
/// <param name="e"></param>
protected void TextBoxTemplateGenerate(string id, int cellIndex, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
TextBox tb = new TextBox();
tb.ID = id;
tb.Text = "测试";
e.Row.Cells[cellIndex].Controls.Add(tb);
}
}