因表格列数过多,需要冻结第一列,网上搜了一圈,基本没有什么可行的方法。
1条回答 默认 最新
神仙别闹 2022-01-01 16:12关注可以尝试通过样式来进行控制
<style type="text/css"> .fixTitle { POSITION: relative; TOP: expression(this.offsetParent.scrollTop) } .fixCol { POSITION: relative; Left: expression(this.offsetParent.scrollLeft) } </style>然后把你想冻结那列就把 fixCol这个Css加到 那列的HeaderStyle-CssClass 和 ItemStyle-CssClass 中去
<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>这个位置
解决 无用评论 打赏 举报 编辑记录