滚动时修复gridview标题

我已经修复了GridView标题,而我向下滚动标题将是常量但问题是标题格式不正确。 像所有列标题都缩小并且不会在特定列下显示。 我尝试了很多东西,但没有任何用处。 显然,标题宽度不等于列。 我已经使用JavaScript代码进行滚动,还使用CssClass进行修复。

请为我找到解决方案

JavaScript代码

 var GridId = ""; var ScrollHeight = 300; var ScrollWidth = 300; window.onload = function () { var grid = document.getElementById(GridId); var gridWidth = grid.offsetWidth; var gridHeight = grid.offsetHeight; var headerCellWidths = new Array(); for (var i = 0; i < grid.getElementsByTagName("TH").length; i++) { headerCellWidths[i] = grid.getElementsByTagName("TH")[i].offsetWidth; } grid.parentNode.appendChild(document.createElement("div")); var parentDiv = grid.parentNode; var table = document.createElement("table"); for (i = 0; i < grid.attributes.length; i++) { if (grid.attributes[i].specified && grid.attributes[i].name != "id") { table.setAttribute(grid.attributes[i].name, grid.attributes[i].value); } } table.style.cssText = grid.style.cssText; table.style.width = gridWidth + "px"; table.appendChild(document.createElement("tbody")); table.getElementsByTagName("tbody")[0].appendChild(grid.getElementsByTagName("TR")[0]); var cells = table.getElementsByTagName("TH"); var gridRow = grid.getElementsByTagName("TR")[0]; for (var i = 0; i  gridRow.getElementsByTagName("TD")[i].offsetWidth) { width = headerCellWidths[i]; } else { width = gridRow.getElementsByTagName("TD")[i].offsetWidth; } cells[i].style.width = parseInt(width - 3) + "px"; gridRow.getElementsByTagName("TD")[i].style.width = parseInt(width - 3) + "px"; } parentDiv.removeChild(grid); var dummyHeader = document.createElement("div"); dummyHeader.appendChild(table); parentDiv.appendChild(dummyHeader); var scrollableDiv = document.createElement("div"); if (parseInt(gridHeight) > ScrollHeight) { gridWidth = parseInt(gridWidth) + 17; } scrollableDiv.style.cssText = "overflow:auto;height:" + ScrollHeight + "px;width:" + gridWidth + "px" + ScrollWidth; scrollableDiv.appendChild(grid); parentDiv.appendChild(scrollableDiv); } 

Cssclass

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

GridView代码

 

我认为此链接也可以帮助您: http : //www.dotnetspider.com/resources/45019-Scrollable-Gridview-with-fixed-Header-Footer-using-Javascript.aspx

我认为这段代码可以帮到你: http : //www.codeproject.com/Articles/59160/Extended-GridView-with-Fixed-Header-and-Pager