冻结DataGrid中的列的比较简单的实现方法!


第一次写文章发到首页,有什么不妥的地方还请各位大虾批评!

今天看到CSDN网友有问冻结DataGrid中的列的问题,以前知道一个冻结DataGrid的
Header的方法比较简单,所以想试试!

费话少说先贴源码

<style type="text/css">
        .fixTitle 
{ POSITION: relative;  TOP: expression(this.offsetParent.scrollTop) }
        .fixCol 
{ POSITION: relative;  Left: expression(this.offsetParent.scrollLeft) }
        </style>


    <DIV style="Z-INDEX: 102; LEFT: 264px; OVERFLOW: auto; WIDTH: 184px; POSITION: relative; TOP: 128px; HEIGHT: 216px"
                ms_positioning
="GridLayout">
                
<asp:DataGrid id="DataGrid1" style="Z-INDEX: 103" runat="server" BorderColor="#DEBA84" BorderStyle="None"
                    BorderWidth
="1px" BackColor="#DEBA84" CellPadding="0" AutoGenerateColumns="False">
                    
<SelectedItemStyle Font-Bold="True" ForeColor="White" BackColor="#738A9C"></SelectedItemStyle>
                    
<ItemStyle ForeColor="#8C4510" BackColor="#FFF7E7"></ItemStyle>
                    
<HeaderStyle Font-Bold="True" ForeColor="White"  BackColor="#A55129"></HeaderStyle>
                    
<FooterStyle ForeColor="#8C4510" BackColor="#F7DFB5"></FooterStyle>
                    
<Columns>
                        
<asp:BoundColumn DataField="IntegerValue" HeaderText="IntegerValue"  HeaderStyle-CssClass ="fixCol" ItemStyle-CssClass="fixCol"></asp:BoundColumn>
                        
<asp:BoundColumn DataField="StringValue" HeaderText="StringValue"></asp:BoundColumn>
                        
<asp:BoundColumn DataField="CurrencyValue" HeaderText="CurrencyValue"></asp:BoundColumn>
                    
</Columns>
                    
<PagerStyle HorizontalAlign="Center" ForeColor="#8C4510" Mode="NumericPages"></PagerStyle>
                
</asp:DataGrid></DIV>

以前不知道从哪位高手那里看到的fixTitle的Css,在这里谢过了!

如果你想冻结那列就把 fixCol这个Css加到 那列的HeaderStyle-CssClass 和  ItemStyle-CssClass 中去

这里我是冻结的第一列。


看看效果吧



posted @ 2005-08-30 10:27  PointNet  阅读(2812)  评论(11编辑  收藏  举报