在标题中,是否有人知道如何在ASP.NET中冻结GridView标头?

有帮助吗?

解决方案

选项(a)购买包含内置此功能的加强版GridView的UI包。

选项(b)推出自己的选项 - 这并不简单。 Dino Esposito 有一种方法

编辑:注意到Dino文章链接到ASPnetPro杂志网站上的仅限订阅者区域。

这是另一种方法。

其他提示

你可以在css

中完成

冻结标题: 1.在样式表中定义类.Freezing:

.Freezing
{
   position:relative ;
   top:expression(this.offsetParent.scrollTop);
   z-index: 10;
}   

2.将Datagrid Header的cssClass分配给Freezing

在Asp.Net 2.0 / 3.5中的Web应用程序中进行开发时,我也遇到了类似的问题。

有一天,我遇到了 IdeaSparks ASP.NET CoolControls 。它有助于显示修复列标题,页脚和分页器。

我亲自使用它们,我真的很喜欢它!

要检查控件,请单击此处:IdeaSparks ASP.NET CoolControls

希望这有帮助!

我想我已经解决了这个问题。 请看下面的javascript代码

<script type="text/javascript" language="javascript">
    var orgTop = 0;
    $(document).scroll(function () {
        var id = $("tr:.header").get(0);
        var offset = $(id).offset();
        var elPosition = $(id).position();
        var elWidth = $(id).width();
        var elHeight = $(id).height();
        if (orgTop == 0) {
            orgTop = elPosition.top;
        }
        if ($(window).scrollTop() <= orgTop) {
            id.style.position = 'relative';
            id.style.top = 'auto';
            id.style.width = 'auto';
            id.style.height = 'auto';
        }
        else {
            id.style.position = 'absolute';
            id.style.top = $(window).scrollTop() + 'px';
            id.style.width = elWidth + 'px';
            id.style.height = elHeight + 'px';

        }
    });
</script>

其中 .header 是Grid标头的css类。

只需在页面上添加此脚本,并将 header 替换为您用于标题的css类名称。

您可以尝试以下示例

冻结GridView列

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top