第一篇隨筆,以後會陸續的把剛開始工作時的知識點都記錄下來,畢竟現在用WebForm的不多了~ AutoGenerateColumns MSDN 說明 : 獲取或設置一個值,該值指示是否為數據源中的每個欄位自動創建綁定的欄位。 預設值為true 當AutoGenerateColumns=true時,那 ...
第一篇隨筆,以後會陸續的把剛開始工作時的知識點都記錄下來,畢竟現在用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(); if (gvTest.HeaderRow.Cells[3].Text.ToString().Equals("PhoneNo")) gvTest.HeaderRow.Cells[3].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>
此屬性,一般在工作中用於列很多,而且是不固定的列,或者需要特殊處理的列,下麵是兩個實例圖