Asp Gridview使用Boundfields?还是Templatefields?

时间:2014-04-22 12:04:46

标签: c# asp.net gridview templatefield boundfield

我将数据放在数据表中,例如

dt.TableName = "SA1";
da.Fill(dt);

GridView1.DataSource = dt;
GridView1.DataBind();

现在我不确定是否应该使用boundfield(对于所有列)

<asp:BoundField DataField="Unit" HeaderText="Unit" SortExpression="Unit"  />

或使用

<asp:TemplateField>
    <HeaderTemplate>
        Units
    </HeaderTemplate>
    <ItemTemplate>
        <asp:TextBox runat="server" ID="txbUnits" Text='<%# Eval("Unit")%>'></asp:TextBox>
    </ItemTemplate>
</asp:TemplateField>

并按照我的方式添加数据,gridview的目的只是显示数据

3 个答案:

答案 0 :(得分:12)

如果您想要显示没有任何花哨的行或任何特定设计,您可以使用 BoundField 。但是,如果您希望以不同于默认方式的方式设计记录显示 - 您需要使用 TemplateField 创建自己的行模板。

查看这些链接 - 他们简要解释了这些差异,但它基本上是默认的VS自定义演示文稿。 http://forums.asp.net/t/1369418.aspx?boundfield+vs+template+field+in+gridview http://www.c-sharpcorner.com/Interviews/answer/1751/difference-between-boundfield-and-templatefield

答案 1 :(得分:4)

如果您只想显示数据,那么您应该使用绑定字段属性。

答案 2 :(得分:1)

  • BoundField将指定的DataSource字段的值显示为 文本。
  • TemplateField允许混合使用HTML标记,Web控件, 和数据绑定语法。

    你的目的只是为了显示数据。所以我认为你需要在这里使用BoundField