Выделение строки в GridView после обратной передачи? - PullRequest
1 голос
/ 28 сентября 2010

У меня есть два вида сетки: 1) мастер и 2) детализация в моем основном виде сетки с несколькими столбцами в нем и гиперссылкой, поэтому, когда пользователь нажимает на гиперссылку (основной вид сетки), я хочу, чтобы строка была выделена, но приведенные ниже коды не удерживать выделенную строку после выполнения обратной передачи, как мне убедиться, что ее выделение выполнено даже после обратной передачи?

protected void gvReport_RowDataBound(object sender, GridViewRowEventArgs e)
        {

            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                e.Row.Attributes.Add("onmouseover", "this.style.backgroundColor='#C2D69B'");
                e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor='white'");
                e.Row.Attributes.Add("style", "cursor:pointer;");
                //e.Row.Attributes.Add("onclick", "location='patron_detail.aspx?id=" + e.Row.Cells[0].Text + "'");
            } 

    } 

<asp:GridView runat="server" ID="gvReport" AutoGenerateColumns="False" CssClass="gv"
                        DataSourceID="LDS_POReport" Width="880px" AllowPaging="true" AllowSorting="true"
                        OnRowCreated="gvReport_RowCreated" OnRowDataBound="gvReport_RowDataBound" DataKeyNames="Id" PageSize="15">
                        <PagerStyle HorizontalAlign="Left" CssClass='header' BackColor="#E5EAF3" ForeColor="Black" />
                        <PagerSettings Mode="NumericFirstLast" />
                        <EmptyDataTemplate>
                            No Items</EmptyDataTemplate>
                        <Columns> 
                            <asp:TemplateField HeaderText="Name" SortExpression="Name">
                                <ItemTemplate>
                                    &nbsp;
                                    <asp:Label ID="lblName" runat="server" Text='<%# Eval("Name") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Number Of Items" SortExpression="NumberOfItems">
                                <ItemTemplate>
                                    <a href='Officer.aspx?Id=<%# Eval("Id") %>'>
                                        <%# Eval("NumberOfItem")%>
                                    </a>
                                </ItemTemplate>
                            </asp:TemplateField>
                        </Columns>
                    </asp:GridView>

Ответы [ 2 ]

0 голосов
/ 28 сентября 2010

извините за вопрос ... вы уверены, что проверяете между двумя целочисленными значениями? ... и если да ... в HTML, который у вас есть, у вас есть цвет фона в элементах таблицы TD? Если у вас есть код цвета в HTML-коде, возможно, это проблема определения стиля CSS.

0 голосов
/ 28 сентября 2010

Просто поместите индекс строки в строку запроса и прочитайте его после обратной передачи, затем выберите строку на основе индекса и измените цвет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...