如何在代码隐藏上添加网格视图列

本文关键字:添加 网格 视图 隐藏 代码 | 更新日期: 2023-09-27 17:56:28

我正在尝试在 ASP.NET 2.0 中向 GridView 添加一列

gridViewPoco.Columns.Add(...)

但是,我找不到正确的选择。我想要以下内容的等效物:

<asp:BoundField>
<asp:TemplateField>

如何在代码隐藏上添加网格视图列

例如;

protected void Btn_AddCol_Click(object sender, EventArgs e)
{
    TemplateField tf = new TemplateField();
    tf.HeaderTemplate = new GridViewLabelTemplate(DataControlRowType.Header, "Col1", "Int32");
    tf.ItemTemplate = new GridViewLabelTemplate(DataControlRowType.DataRow, "Col1", "Int32");
    MyGridView.Columns.Add(tf);
}
  • 定义新TemplateField
  • 设置列标题名称 ( Col1 ) 和类型 ( Int32
  • 设置列值类型 ( Int32
  • 将此字段添加到您的Gridview

Soner的答案非常适合在网格视图的末尾添加列。但是,如果您发现自己需要将列添加到 GridView 的中间,则需要采用稍微不同的路径(使用 MyGridView.Columns.Insert() 函数):

  protected void Btn_AddCol_Click(object sender, EventArgs e)
    {
    TemplateField tf = new TemplateField();
    tf.HeaderTemplate = new GridViewLabelTemplate(DataControlRowType.Header, "Col1", "Int32");
    tf.ItemTemplate = new GridViewLabelTemplate(DataControlRowType.DataRow, "Col1", "Int32");
    MyGridView.Columns.Insert(2, tf); //the 2 makes it go into the third column -- zero-based indexing ftw
    }