Заморозить заголовок GridView в ASP.NET? - PullRequest
1 голос
/ 10 сентября 2010

У меня есть gridview с 15 и более столбцами, мне нужно заморозить заголовок gridview с помощью следующего CSS:

  .container
        {
            overflow: auto;
        }
        /* Keep the header cells positioned as we scroll */
        .container table th
        {
           position: relative; 
        }
        /* For alignment of the scroll bar */
        .container table tbody
        {
            overflow-x: hidden;
        }

тело сетки хорошо прокручивается, но мой заголовок gridview не прокручивается наось Y.

мой код вида сетки следующим образом.

<asp:gridview id="RadGrid1" runat="server" borderstyle="None" borderwidth="1px"
    gridlines="Both" autogeneratecolumns="true" onrowcommand="OnSelectedChanged"
    rowstyle-wrap="false" rowstyle-cssclass="container" 
    onrowdatabound="RadGrid1_RowDataBound" datakeynames="DocID,DocumentName">
      <headerstyle cssclass="container" backcolor="LightBlue" wrap="false"    
          horizontalalign="Center" verticalalign="Middle" />
      <selectedrowstyle backcolor="Red" wrap="false" />
      <columns>
         <asp:TemplateField>
            <HeaderTemplate>
               <input id="chkAll" onclick="javascript:SelectAllCheckboxes(this);"
                    runat="server" type="checkbox" />
            </HeaderTemplate>
            <ItemTemplate>
               <asp:CheckBox ID="chkSelect" runat="server" />
            </ItemTemplate>
         </asp:TemplateField>
         <asp:ButtonField ButtonType="Link" HeaderText="View" Text="View" CommandName="view" />
         <asp:ButtonField ButtonType="Link" HeaderText="Activity" Text="Activity" CommandName="activity" />
      </columns>
</asp:gridview>

1 Ответ

2 голосов
/ 10 сентября 2010

Артикул: Вид сетки с фиксированным заголовком

Для сетки, чтобы заморозить заголовок

div#gridPanel 
{
   width:900px;
   overflow:scroll;
   position:relative;
}


div#gridPanel th
{  
   top: expression(document.getElementById("gridPanel").scrollTop-2);
left:expression(parentNode.parentNode.parentNode.parentNode.scrollLeft);
   position: relative;
   z-index: 20;
}


<asp:Panel ID="gridPanel" runat="server" Height="200px" Width="100px" ScrollBars="Auto">
   asp.net grid view
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...