2017-04-25 45 views
0

我有一個母版頁有幾個子頁面,這個母版頁恰好包含一個網格視圖,因爲所有的子頁面都使用一個。我已經到了我已經意識到需要將小改動附加到單個子頁面的網格視圖onrowdatabound事件的階段。母版頁內gridview事件的潛在差異

作爲一個例子,我有3頁,A.aspx,B.aspx,C.aspx。所有這三者都使用網格並將不同的數據綁定到母版頁中的gridview。 A & B幾乎完全相同,並且沒有任何問題,但C想要附加A行所需的行屬性,A & B不需要。

如何應用這些更改而不會對其他頁面造成問題?

[可選]這是完全錯誤的方式去和/或我應該讓他們單獨的頁面?

Little diagram of my situation

回答

0

您可以編程事件綁定到一個GridView。因此,在頁面C.aspx中,您可以執行下列操作:

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!Page.IsPostBack) 
    { 
     //find the gridview in the master page 
     GridView gv = Master.FindControl("GridView1") as GridView; 

     //add the event to the gridview 
     gv.RowDataBound += GridView1Master_RowDataBound; 

     gv.DataSource = mySource; 
     gv.DataBind(); 
    } 
} 

protected void GridView1Master_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.DataRow) 
    { 
     e.Row.BackColor = Color.Red; 
    } 
}