2016-05-10 1 views
0

J'ai un div d'en-tête comme ceci:Impression d'un en-tête dans tous paginée et un gridview avec une véritable recherche de personnes

<div id="header" style="width:100%; padding: 6px; margin-right: 20px; border-top-style: dotted; border-color: inherit; border-width: 0.2px; font-family: 'B Yekan'; font-size: 10pt;"> 
     <p style="display:block;float:right"> 
      <a style="right:0; font-size: 14pt; margin-right: 10px"> 
       <asp:Label ID="lblMasir" runat="server" Text=""></asp:Label> 
      </a> 
     </p> 
    </div> 

et une vue de la grille dans une div sous la div d'en-tête comme:

<div style="float: right; direction: rtl"> 
       <asp:GridView Font-Names="B Nazanin" Font-Size="10pt" ID="GridView1" AllowPaging="false" AutoGenerateColumns="true" runat="server" CellPadding="6" BorderStyle="Double" OnDataBound="GridView1_DataBound" OnRowCreated="GridView1_RowCreated"> 
        <HeaderStyle Font-Bold="True" Font-Size="9pt" /> 
       </asp:GridView> 
      </div> 

et ces deux plongées situées dans un autre conteneur DIV pour avoir la largeur de l'en-tête même que la largeur de la grille:

<div style="position:absolute"> 
    <div id="header" …> 
     … 
    </div> 
    <br /> 
    <div id="griddiv…> 
     … 
    </div> 
</div> 

alors comment peut ip rint cette page que l'en-tête répété dans toutes les pages imprimées en tant qu'en-tête de gridview et gridview imprimé avec la vraie pagination. Je sais comment imprimer un seul girdview avec pagination mais je ne sais pas comment le faire avec un en-tête en haut si le gird dans toutes les pages. Cordialement!

+0

essayer secrète tout en pdf en utilisant iTextSharp ... vous n'avez pas d'enregistrer le fichier physique –

+0

Vous pouvez ajouter des lignes d'en-tête supplémentaires à GridView: http://stackoverflow.com/questions/36716084/how-to-create-custom-header-in-asp-net-gridview/36727468#36727468 – fnostro

+0

@fnostro J'utilise C#! ce lien est pour vb. Connaissez-vous une autre source pour C#? – iman

Répondre

0

version C# de my VB answer:

private void gvExpertRateHistory_PreRender(Object sender, System.EventArgs e) 
    { 
     GridView gv = (GridView)sender; 
     Table InnerTable = (Table)gv.Controls[0]; 

     if (gv.HeaderRow != null && InnerTable != null) 
     { 
      GridViewRow hr; 

      hr = new GridViewRow(0, -1, DataControlRowType.Header, DataControlRowState.Normal); 

      hr.Cells.Add(NewCell(1, String.Empty, gv, Alignment:HorizontalAlign.Left)); 
      hr.Cells.Add(NewCell(2, "Requested On", gv, Alignment: HorizontalAlign.Left)); 
      hr.Cells.Add(NewCell(4, "Review Rates", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(6, "Court Rates", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(6, "Deposition Rates", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(4, "IME Rates", gv, "WhiteBorderLB")); 
      InnerTable.Rows.AddAt(0, hr); 

      hr = new GridViewRow(0, -1, DataControlRowType.Header, DataControlRowState.Normal); 

      hr.Cells.Add(NewCell(1, "Expert", gv, Alignment: HorizontalAlign.Left)); 
      hr.Cells.Add(NewCell(2, "Requested By", gv, Alignment: HorizontalAlign.Left)); 
      hr.Cells.Add(NewCell(2, "Hourly", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(2, "Flat", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(2, "Hourly", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(2, "Daily", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(2, "Half-Day", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(2, "Hourly", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(2, "Daily", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(2, "Half-Day", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(2, "Hourly", gv, "WhiteBorderLB")); 
      hr.Cells.Add(NewCell(2, "Flat", gv, "WhiteBorderLB")); 
      InnerTable.Rows.AddAt(1, hr); 
     } 
    } 

private TableHeaderCell NewCell(int colspan, 
            string text, 
            GridView gv, 
            string CssClass = "", 
            HorizontalAlign Alignment = HorizontalAlign.Center) 
    { 

     TableHeaderCell thc = new TableHeaderCell(); 

     thc.HorizontalAlign = Alignment; 
     thc.ColumnSpan = colspan; 
     thc.Text = text; 
     thc.BackColor = gv.HeaderRow.BackColor; 
     thc.ForeColor = gv.HeaderRow.ForeColor; 
     thc.Font.Bold = true; 
     thc.CssClass = CssClass; 

     return thc; 

    }