簡體   English   中英

編輯時更改Gridview行背景顏色?

[英]Changing Gridview row background color when editing?

在編輯時編輯gridview行的背景顏色我遇到了一些麻煩。

問題是,我正在使用RowDataBound事件方法在顯示報告時根據條件更改e.Row.BackColor (3種不同的顏色取決於結果)。 對於不符合該條件的行,單擊“編輯”按鈕時將應用GridView的屬性<EditRowStyle BackColor="#999999" />

但是,我似乎無法找到一種方法來改變那些符合標准的顏色,因為RowDataBound似乎一直被調用,覆蓋了我所做的任何更改。

有什么建議么?

在Grid RowEditing事件中寫一行:

GridView1.EditRowStyle.BackColor = System.Drawing.Color.LightYellow; 

希望這可以幫助。 配置GridView行編輯。 這應該是足夠的信息。 如果您需要更多,請告訴我。

protected void uxGrid_RowEditing(object sender, GridViewEditEventArgs e)
{
    ClearBackColor();

    GridViewRow row = uxGrid.Rows[e.NewEditIndex];
    row.BackColor = Color.LightYellow;
} 

private void ClearBackColor()
{
    foreach (GridViewRow row in uxGrid.Rows)
    {
        row.BackColor = System.Drawing.Color.Transparent;
    }
}

嘗試:

<asp:GridView runat="server" >
    <Columns>
    </Columns>

    <EditRowStyle BackColor="#999999" />    
    <SelectedRowStyle BackColor="#999999" /> 
</asp:GridView>

為什么不編寫自己的邏輯方法來改變行的顏色?,循環遍歷行,這可以避免回發問題......也許!

正如@Rami所說,創建一個循環DataGrid行並更改顏色的方法。 在PreRender事件處理程序中調用此方法。 這樣每次回發都會調用此方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM