垂直スクロールバーを使用してグリッドビューで固定ヘッダーを表示するには?
それは、ヘッダーが表示されるはずです。
グリッドを div または内に配置します。ただしpanel with scrollbar property
、適切な位置合わせを行うには余分な労力がかかります。ヘッダー テーブルの各セルはグリッドのものである必要がaligned with each cell
あります。他の回避策は、グリッドのようfix the header of the grid
な方法で行うことです。それ。scrolling down shouldnt hide the header
stylesheet
コードに次のスタイルを追加し、グリッド ビューまたはデータグリッド ヘッダー スタイルを割り当てますcss
。
.fixedHeader
{
font-weight:bold;
position:absolute;
background-color: #006699;
color: #ffffff;
height: 25px;
top: expression(Sys.UI.DomElement.getBounds(document.getElementById("panelContainer")).y-25);
}
"panelContainer" is the id of the panel
. .25 ピクセルがヘッダーの通常の高さである"Sys.UI.DomElement.getBounds(document.getElementById("panelContainer")).y "
必要があるパネルの正確な Y 位置を示します。グリッド コンテンツのスペースを消費しないようにします。Panel コントロールを使用すると、. このコード例では、 、 を設定し、のみを表示しながらスクロールするように Panel を設定します。グリッドをパネル内に配置します。上で定義した CSS クラスを GridView の HeaderStyle に割り当てる必要があります。fix the header
That much of space we had to leave for the header
width, height, and scrollable option
height as 300px
the width as 100%
vertical scrollbars
<asp:Panel ID="panelContainer" runat="server" Height="300px" Width="100%" ScrollBars="Vertical">
<asp:GridView ID="gvScrollableExample" runat="server">
<HeaderStyle CssClass="fixedHeader " />
</asp:GridView></asp:Panel>
このようにして、ヘッダーをグリッドの上部に固定し、下にスクロールしてもヘッダーでグリッドをスクロールしません。