Member 13174280 Ответов: 1

Прокручиваемые таблицы с фиксированными заголовками


использование скрипта

Прокручиваемый Gridview с фиксированными заголовками в asp.net - ASP.NET,C#.NET,MVC,JQuery,JavaScript,SQL Server,WCF примеры[^]

работа для одного GridView

но для двух или более GridView ?

Что я уже пробовал:

скрипт для GrdView1

ScriptManager.RegisterStartupScript(Page, this.GetType(), "Key", "<script>MakeStaticHeader('" + GrdView1.ClientID + "', 400, 950 , 40 ,true); </script>", false);


in the case of a second gridview ? if I say another script
has no effect


ScriptManager.RegisterStartupScript(Page, this.GetType(), "Key", "<script>MakeStaticHeader('" + GrdView2.ClientID + "', 400, 950 , 40 ,true); </script>", false);

Richard MacCutchan

Вы должны спросить на сайте, где вы получили код.

Richard Deeming

Вы не забыли сменить тему разговора? "Key" параметр для второго RegisterStartupScript позвонить?

1 Ответов

Рейтинг:
0

Member 13174280

it is not enough to change the key to have another GridView


First call -- work
ScriptManager.RegisterStartupScript(Page, this.GetType(), "Grd2", "<script>MakeStaticHeader('" + GridView2.ClientID + "', 450, 850 , 22 ,false); </script>", false);

other GridView with the new Key -- variable already decalred
ScriptManager.RegisterStartupScript(Page, this.GetType(), "Grd1", "<script>MakeStaticHeader('" + GridView1.ClientID + "', 250, 550 , 22 ,false); </script>", false);


Script
 function MakeStaticHeader(gridId, height, width, headerHeight, isFooter) {
        var tbl = document.getElementById(gridId);
        if (tbl) {
            var DivHR = document.getElementById('DivHeaderRow');
            var DivMC = document.getElementById('DivMainContent');
            var DivFR = document.getElementById('DivFooterRow');
.........

Structure for a Grid

 <%-- root --%>
    <div style="text-align:left;" id="DivRoot">
        <div style="overflow: hidden;" id="DivHeaderRow">
       </div>

        <%-- scroll --%>
        <div style="overflow:scroll;" onscroll="OnScrollDiv(this)" id="DivMainContent">

          <asp:GridView ID="GridView2" runat="server" Width="100%" BorderWidth="1px" AutoGenerateColumns="False" BackColor="gray" ForeColor="white" ShowFooter="false">
             <Columns>
                 ..........
             </Columns> 
          </asp:GridView>        
        </div>

       <%-- footer --%>
       <div id="DivFooterRow" style="overflow:hidden">
       </div>
    </div>


for Other Grid on the same page DivRoot, DivMainContent, DivFooterRow are already declared

 <%-- root --%>
    <div style="text-align:left;" id="DivRoot">
        <div style="overflow: hidden;" id="DivHeaderRow">
       </div>

        <%-- scroll --%>
        <div style="overflow:scroll;" onscroll="OnScrollDiv(this)" id="DivMainContent">

          <asp:GridView ID="GridView1" runat="server" Width="100%" BorderWidth="1px" AutoGenerateColumns="False" BackColor="gray" ForeColor="white" ShowFooter="false">
             <Columns>
                 ..........
             </Columns> 
          </asp:GridView>        
        </div>

       <%-- footer --%>
       <div id="DivFooterRow" style="overflow:hidden">
       </div>
    </div>