boundfield(boundfield 隐藏)
vs如何设置boundfield属性
1、指定在BoundField对象中显示的字段,请将DataField属性设置为字段的名称。通过将HtmlEncode属性设置为true,可以在显示字段的值之前对其进行HTML编码。
2、通过设置DataFormatString属性,可以将自定义格式化字符串应用到字段的值。
3、当HtmlEncode属性为true时,将在自定义格式字符串中使用字段的编码字符串值,默认情况下,当数据绑定控件处于只读模式时,格式化字符串才能应用到字段值。
如何在后台C#给BoundField赋值属性
前台一个GridView控件:
asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
Width="257px" onrowcommand="GridView1_RowCommand"
Columns
asp:BoundField DataField="ID" ReadOnly="true" HeaderText="ID" /
asp:BoundField DataField="Name" HeaderText="姓名" /
asp:BoundField DataField="username" HeaderText="昵称" /
asp:TemplateField HeaderText="操作"
ItemTemplate
asp:LinkButton ID="LinkButton2" CommandName ="del" CommandArgument ='%#Eval("ID") %' runat="server"删除/asp:LinkButton
/ItemTemplate
/asp:TemplateField
/Columns
/asp:GridView
后台:
protected void Page_Load(object sender, EventArgs e)
{
string sql = "select * from PostLog";
DataTable data = common.common.GetListCeshi(sql, 0, 0);
GridView1.DataSource = data;
GridView1.DataBind();
DateTime da = DateTime.Now;
Response.Write(da.ToShortDateString().ToString());
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName=="del")
{
Response.Write(e.CommandArgument);//得到绑定的ID值
}
}
gridview如何设置列标题 并且boundfield与template有什么区别
通过BoundField或TemplateField的HeaderText来设置列标题
区别在于BoundField是固定Label显示形式的列绑定项,而TemplateField是可以在其中任意自定义显示形式的模版列绑定项,应用上相对灵活多变。
举例说明:
asp:TemplateField
HeaderText="标题"
ItemTemplate
asp:Label
ID="lbl"
runat="server"
Text='%#Eval("Title")
%'/asp:Label
/ItemTemplate
/asp:TemplateField
asp:BoundField
HeaderText="标题"
DataField="Title"/asp:BoundField
这两者在显示效果上是一致的
但在实际应用中还是有很大区别的
简单举例说明:
1.TemplateField中的自定义可为多个;而BoundField是唯一的
2.TemplateField中的自定义项必须有一个ID,这样就可以在RowDataBind或ItemDataBind事件中对其项进一步进行复杂的处理;而而BoundField不具备ID,则在事件中不可再进一步处理。