在ASP.NET页面中冻结DataGrid的列或头部

mac2022-06-30  71

asp.net页面中,有时候我们需要冻结datagrid中的某一列,比如显示的数据项过多时,我们需要让第一列不动,拖动横向滚动条时其他列隐藏,这时就需要冻结列了;另外,有时候也需要让datagrid的头部不动,拖动纵向滚动条时,下面的数据项可以滚动。在实现的过程中,其实就是用了css样式来控制,一起看一下。

要冻结哪一列,就把fixCol这个CSS加到HeaderStyle-CssClass和ItemStyle-CssClass-->        <style type="text/css">            .fixCol {}{ ; LEFT: expression(this.offsetParent.scrollLeft); POSITION: relative }       </style>    </HEAD>

<asp:BoundColumn DataField="LastName" HeaderText="姓名">                                  <!--下面就是冻结列-->                                    <HeaderStyle CssClass="fixCol"></HeaderStyle>                                    <ItemStyle CssClass="fixCol"></ItemStyle>                                </asp:BoundColumn>

 

把fixTitle这个CSS加到DataGrid的HeaderStyle-CssClass和ItemStyle-CssClass-->        <style type="text/css">            .fixTitle {}{ POSITION: relative; ; TOP: expression(this.offsetParent.scrollTop) }</style>    </HEAD>

<!--冻结头部-->                            <ItemStyle ForeColor="#330099" BackColor="White" CssClass="fixTitle"></ItemStyle>                           <HeaderStyle Font-Bold="True" ForeColor="#FFFFCC" BackColor="#990000" CssClass="fixTitle"></HeaderStyle>                                                     <FooterStyle ForeColor="#330099" BackColor="#FFFFCC"></FooterStyle> 

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1210409

转载于:https://www.cnblogs.com/antony1029/archive/2006/09/12/501505.html

最新回复(0)