第一篇随笔,以后会陆续的把刚开始工作时的知识点都记录下来,毕竟现在用WebForm的不多了~
AutoGenerateColumns
MSDN 说明 : 获取或设置一个值,该值指示是否为数据源中的每个字段自动创建绑定的字段。
默认值为true
当AutoGenerateColumns=true时,那么前台.aspx 页面上AutoGeneratedField 对象将自动创建数据源中的每个字段。
当AutoGenerateColumns=false时,那么前台.aspx 页面上Gridview中需要逐列自定义columns。绑定的列除字段外,还可以显示按钮字段、复选框列字段、命令字段、超链接列字段、图像字段或自定义模板列。
AutoGenerateColumns=true
效果图:
.aspx 代码
<div class="col-md-6"> <asp:GridView ID="gvTest" runat="server" CssClass="table table-bordered table-hover" AutoGenerateColumns="true" OnRowDataBound="gvTest_RowDataBound"> </asp:GridView> </div>
.aspx.cs 代码
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { InitView(); } } protected void InitView() { gvTest.DataSource = BLLFPY.Instance.DataSource(); gvTest.DataBind(); ].Text.ToString().Equals("PhoneNo")) gvTest.HeaderRow.Cells[].Text = "Phone"; } protected void gvTest_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { } }
AutoGenerateColumns=false
一样的效果图,后台绑定数据的代码也相同,只有前台代码不同(如下):
.aspx 代码
<div class="col-md-6"> <asp:GridView ID="gvTest" runat="server" CssClass="table table-bordered table-hover" AutoGenerateColumns="false" OnRowDataBound="gvTest_RowDataBound"> <Columns> <asp:BoundField HeaderText="SNo." DataField="SNo." /> <asp:BoundField HeaderText="Name" DataField="Name" /> <asp:BoundField HeaderText="Sex" DataField="Sex" /> <asp:BoundField HeaderText="PhoneNo" DataField="PhoneNo" /> </Columns> </asp:GridView> </div>
此属性,一般在工作中用于列很多,而且是不固定的列,或者需要特殊处理的列,下面是两个实例图