2017-06-15 13 views
-1

IE11でXMLファイルを表示して印刷プレビューを表示すると、上手く見えますが、C#経由でwebbrowserオブジェクトにXMLを読み込み、ウェブブラウザを使用します.showprintpreview改ページが正しく機能していません。ウェブブラウザの印刷プレビューxmlでxlsが正しく表示されない

私のXLS:

<?xml version="1.0" encoding="UTF-8"?> 

<xsl:template match="/"> 
<html> 
    <title>Report printed by DFrk(Danny Frank)</title> 
    <head> 
     <style type="text/css"> 
      table { page-break-after: auto }       
      tr { page-break-inside: avoid !important;} 
      td { 
       vertical-align: middle; 
       font-family: Arial; 
       font-size: 10pt; 
       padding: 5px; 
       text-align: left; 
       border-bottom: 1px solid #ddd;    
       } 
      div { page-break-inside: avoid !important; } 
      th { page-break-inside: avoid; 
       font-family: Arial; 
       font-size: 10pt; 
       font-weight: bold; 
       padding: 5px; 
       text-align: left; 
       border-bottom: 1px solid Gainsboro; 
       background-color: SteelBlue; 
       color: white; } 
     @media print { 
      thead {display: table-header-group } 
      tfoot {display: table-footer-group } 
      .noPrint {display: none } 
      .noScreen{display: none} 
     } 
     @media screen { 
      .noPrint{} 
      .noScreen{display: none } 
     } 
     </style> 
    </head> 
    <body> 
     <table class="ex1" border="0" cellpadding="0" cellspacing="0" width="100%"> 
      <thead> 

       <tr> 
         <td colspan="2"><img src="..\..\Img\ANLogo vandret.jpg" height="100" width="150"><h2>Connfigurated tags</h2></img></td> 
       </tr> 
       <tr> 
        <div> 
         <th>Id</th> 
         <th>Description</th> 
        </div> 
       </tr> 
      </thead> 

      <tbody> 
       <xsl:for-each select="configuration/tags/tag"> 
       <tr> 
        <div> 
         <td><xsl:value-of select="@id"/></td> 
         <td><xsl:value-of select="@description"/></td> 
        </div> 
       </tr> 
       </xsl:for-each> 
      </tbody> 
     </table> 
    </body> 
    </html> 
</xsl:template> 

そして、私のXML次のようになります。

<?xml version="1.0" encoding="utf-8"?> 
<?xml-stylesheet type="text/xsl" href="Konfiguration_style.xsl"?> 

<configuration> 
    <template> 
    <name>Tags</name> 
    <version>001</version> 
    <description>Configuration of tags for OPC</description> 
    <changelog version="001" auther="DFrk">First version</changelog> 
    </template> 
    <tags id="parameterfilelist" description="List of tags" allowmulti="false"> 
    <tag id="Tag1" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.Prod.TankPresAdv"></tag> 
    <tag id="Tag2" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.Prod.KrystTidAdv"></tag> 
    <tag id="Tag3" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.TjekpH.MinpH"></tag> 
    <tag id="Tag4" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.TjekpH.MaxpH"></tag> 
    <tag id="Tag5" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.pHJust.MinStartpH"></tag> 
    <tag id="Tag6" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.pHJust.CF_Limit"></tag> 
    <tag id="Tag7" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.pHJust.pHSetPunktLowAdv"></tag> 
    <tag id="Tag8" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.pHJust.pHSetPunktHighAdv"></tag> 
    <tag id="Tag9" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.pHJust.GrovDoseringsTid"></tag> 
    <tag id="Tag10" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.pHJust.GrovPauseTid"></tag> 
    <tag id="Tag11" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.pHJust.FinDoseringsTid"></tag> 
    <tag id="Tag12" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.pHJust.FinPauseTid"></tag> 
    <tag id="Tag13" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.pHJust.MaxpHJusteringsTid"></tag> 
    <tag id="Tag14" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.Transfere.GramAktivStof"></tag> 
    <tag id="Tag15" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.Transfere.RestMængde"></tag> 
    <tag id="Tag16" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.Transfere.TankNiveauForLSL"></tag> 
    <tag id="Tag17" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.Kryst.KrystalMaxDeltaVægt"></tag> 
    <tag id="Tag18" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.Kryst.HighTempAdv"></tag> 
    <tag id="Tag19" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.Kryst.LowTempAdv"></tag> 
    <tag id="Tag20" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD131.Dv.E.InsulinOpl.OmrørTid"></tag> 
    <tag id="Tag21" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.Prod.TankPresAdv"></tag> 
    <tag id="Tag22" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.Prod.KrystTidAdv"></tag> 
    <tag id="Tag23" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.TjekpH.MinpH"></tag> 
    <tag id="Tag24" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.TjekpH.MaxpH"></tag> 
    <tag id="Tag25" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.pHJust.MinStartpH"></tag> 
    <tag id="Tag26" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.pHJust.CF_Limit"></tag> 
    <tag id="Tag27" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.pHJust.pHSetPunktLowAdv"></tag> 
    <tag id="Tag28" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.pHJust.pHSetPunktHighAdv"></tag> 
    <tag id="Tag29" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.pHJust.GrovDoseringsTid"></tag> 
    <tag id="Tag30" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.pHJust.GrovPauseTid"></tag> 
    <tag id="Tag31" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.pHJust.FinDoseringsTid"></tag> 
    <tag id="Tag32" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.pHJust.FinPauseTid"></tag> 
    <tag id="Tag33" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.pHJust.MaxpHJusteringsTid"></tag> 
    <tag id="Tag34" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.Transfere.GramAktivStof"></tag> 
    <tag id="Tag35" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.Transfere.RestMængde"></tag> 
    <tag id="Tag36" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.Transfere.TankNiveauForLSL"></tag> 
    <tag id="Tag37" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.Kryst.KrystalMaxDeltaVægt"></tag> 
    <tag id="Tag38" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.Kryst.HighTempAdv"></tag> 
    <tag id="Tag39" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.Kryst.LowTempAdv"></tag> 
    <tag id="Tag40" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD132.Dv.E.InsulinOpl.OmrørTid"></tag> 
    <tag id="Tag41" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.Prod.TankPresAdv"></tag> 
    <tag id="Tag42" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.Prod.KrystTidAdv"></tag> 
    <tag id="Tag43" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.TjekpH.MinpH"></tag> 
    <tag id="Tag44" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.TjekpH.MaxpH"></tag> 
    <tag id="Tag45" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.pHJust.MinStartpH"></tag> 
    <tag id="Tag46" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.pHJust.CF_Limit"></tag> 
    <tag id="Tag47" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.pHJust.pHSetPunktLowAdv"></tag> 
    <tag id="Tag48" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.pHJust.pHSetPunktHighAdv"></tag> 
    <tag id="Tag49" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.pHJust.GrovDoseringsTid"></tag> 
    <tag id="Tag50" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.pHJust.GrovPauseTid"></tag> 
    <tag id="Tag51" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.pHJust.FinDoseringsTid"></tag> 
    <tag id="Tag52" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.pHJust.FinPauseTid"></tag> 
    <tag id="Tag53" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.pHJust.MaxpHJusteringsTid"></tag> 
    <tag id="Tag54" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.Transfere.GramAktivStof"></tag> 
    <tag id="Tag55" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.Transfere.RestMængde"></tag> 
    <tag id="Tag56" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.Transfere.TankNiveauForLSL"></tag> 
    <tag id="Tag57" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.Kryst.KrystalMaxDeltaVægt"></tag> 
    <tag id="Tag58" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.Kryst.HighTempAdv"></tag> 
    <tag id="Tag59" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.Kryst.LowTempAdv"></tag> 
    <tag id="Tag60" type="text" description="Q::KaDDK8Kryst:StartMaster.KaDD133.Dv.E.InsulinOpl.OmrørTid"></tag> 
    </tags> 
</configuration> 

そして変換を含むコードを使用:

private void DisplayXml() 
    { 
     XmlDocument doc = new XmlDocument(); 

     // Load the xslt used by IE to render the xml 
     XslCompiledTransform xTrans = new XslCompiledTransform(); 
     xTrans.Load("Konfiguration_style.xsl"); 

     doc.Load("TagsKaDDK8Kryst.xml"); 

     // Transform the XML data 
     MemoryStream ms = new MemoryStream(); 
     xTrans.Transform(doc, null, ms); 

     ms.Position = 0; 

     Program.opcTool.setErrorTextInStatusBar(webBrowser1.Version.ToString()); 

     // Set to the document stream 
     webBrowser1.DocumentStream = ms; 
     this.webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted); 
    } 

    void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
    { 
     this.webBrowser1.ShowPrintPreviewDialog(); 
    } 

Page two where id is missing

page one where the id that should be in page two is showing in the buttom

idカラムは、C#のコードを使用しているとき、私は見つけることができない何らかの理由で避け右ページ・ブレーク中に入ることはありません。

答えて

0

<xsl:output method="html" doctype-system="about:legacy-doctype"/>をXSLTに追加してみてください。 head要素の内部に<title>Report printed by DFrk(Danny Frank)</title>を移動します。

+0

役に立たなかった:( – DannyFrank

関連する問題