簡體   English   中英

處理時更改gridview行的背景顏色

[英]Change background color of gridview row while processing

我需要做的是在處理過程中突出顯示每一行以顯示過程進度,gridview可能包含近一千行。 以下是我編寫的代碼,但是不起作用。 請有人幫我。

<

asp:GridView ID="gdview1" runat="server" BackColor="White"
                BorderColor="#DEDFDE" BorderStyle="Solid" BorderWidth="1px" CellPadding="4"
                ForeColor="Black" GridLines="Vertical" Font-Names="Calibri"
                Font-Size="Small" AutoGenerateColumns="False"
                OnRowDataBound="gdview1_RowDataBound"
                OnSelectedIndexChanged="gdview1_SelectedIndexChanged">
                <AlternatingRowStyle BackColor="White" />
                <Columns>
                    <asp:TemplateField>
                        <HeaderTemplate>
                            <asp:CheckBox ID="chkBxHeader" OnCheckedChanged="chkSelect_CheckedChanged" AutoPostBack="true" runat="server" />
                        </HeaderTemplate>
                        <EditItemTemplate>
                            <asp:CheckBox ID="chkNUM" runat="server" />
                        </EditItemTemplate>
                        <ItemTemplate>
                            <asp:CheckBox ID="chkNUM" runat="server" DataField="ColNUM" />
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Row#">
                        <ItemTemplate>
                            <%# Container.DataItemIndex + 1 %>
                        </ItemTemplate>
                    </asp:TemplateField>

                    <asp:BoundField DataField="ColNUM" HeaderText="Contract #" />
                    <asp:BoundField DataField="Col1" HeaderText="Suffix" />
                    <asp:BoundField DataField="Col2" HeaderText="First Name" />
                    <asp:BoundField DataField="Col3" HeaderText="Last Name" />
                    <asp:BoundField DataField="Col4" HeaderText="Street" />
                    <asp:BoundField DataField="Col5" HeaderText="City" />
                    <asp:BoundField DataField="Col6" HeaderText="Zip" />

                </Columns>
                <FooterStyle BackColor="#CCCC99" />
                <HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
                <PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" />
                <RowStyle BackColor="#F7F7DE" />
                <SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
                <SortedAscendingCellStyle BackColor="#FBFBF2" />
                <SortedAscendingHeaderStyle BackColor="#848384" />
                <SortedDescendingCellStyle BackColor="#EAEAD3" />
                <SortedDescendingHeaderStyle BackColor="#575357" />

            </asp:GridView>




 namespace WebApplication1
    {
        public partial class WebForm1 : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {

            }

            protected void butChargeCreditCards_Click(object sender, EventArgs e)
            {

                DataTable tblContrts = (DataTable) Session["tblContrts"];

                foreach (GridViewRow row in gdview1.Rows)
                {

                    CheckBox chkbx = (CheckBox) row.FindControl("chkNUM");

                    if (chkbx != null && chkbx.Checked)
                    {

                        gdview1_SelectedIndexChanged(row,e);



                        string SS = chkbx.Text.ToString();



                        string strResults = method1;



                    }


                }

            }


            protected void gdview1_SelectedIndexChanged(object sender, EventArgs e)
            {

                foreach (GridViewRow row in gdview1.Rows)
                {
                    if (row.RowIndex == gdview1.SelectedIndex)
                    {
                        row.BackColor = ColorTranslator.FromHtml("#A1DCF2");
                    }
                    else
                    {
                        row.BackColor = ColorTranslator.FromHtml("#FFFFFF");
                    }
                }
            }

        }
    }

您是否嘗試過使用Grid的“ OnRowDataBound”或“ OnRowCreated”事件並在后面的代碼中編寫突出顯示顏色的內容?

像這樣嗎
http://www.java2s.com/Code/ASP/ADO.net-Database/使用RowCreated事件以編程方式更改style.htm

但是也許您有一個問題,因為加載太快而無法真正注意到?

暫無
暫無

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

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