2017-03-04 1 views
0

Je travaille sur un projet qui nécessite un rapport à partir d'un modèle de mot. Je dois enlever l'en-tête et la bordure de la table lorsqu'il n'y a pas de données. J'ai essayé de nombreuses façons, mais travailler en travaillant l'un d'entre eux.Enlever l'en-tête et la bordure du tableau dans le mot .NET

Mon modèle dans comme ci-dessous:

Input

sortie est comme ci-dessous:

Output

Je veux supprimer la conception de la table sur le point 2.

Mon code est comme ci-dessous

DataTable dtPersonalInfo = new dalCoro_Report().GetNonEffCertPersonalInfo(MemberID); 
     DataTable dtUnitAppt = new dalCoro_Report().GetNonEffCertExperienceUnitAppt(MemberID); 
     DataTable dtCourseInfo = new dalCoro_Report().GetNonEffCertExperienceCourse(MemberID); 
     DataTable dtMedalInfo = new dalCoro_Report().GetNonEffCertExperienceMedal(MemberID); 
     DataTable dtUnMissionInfo = new dalCoro_Report().GetNonEffCertUN_MSN(MemberID); 

     if (dtPersonalInfo.Rows.Count == 0) 
      return; 

     var fileName = "ExperienceCert_" + dtPersonalInfo.Rows[0]["PersonalNo"] + ".doc"; 
     var input = Server.MapPath(@"~\Coro_Report\Template\Certificates\6. Experience Cert2.doc"); 
     var output = Server.MapPath(@"~\Coro_Report\Report\" + fileName); 

     var doc = new Document(input); 


     dtPersonalInfo.TableName = "PersonalInfo"; 
     doc.MailMerge.ExecuteWithRegions(dtPersonalInfo); 

     if (dtUnitAppt.Rows.Count > 0) 
     { 
      doc.MailMerge.TrimWhitespaces = false; 

      dtUnitAppt.TableName = "UnitAppt"; 
      //doc.MailMerge.ExecuteWithRegions(dtUnitAppt); 
     } 

     if (dtCourseInfo.Rows.Count > 0) 
     { 
      doc.MailMerge.TrimWhitespaces = false; 

      dtCourseInfo.TableName = "Course"; 
      doc.MailMerge.ExecuteWithRegions(dtCourseInfo); 
     } 
     else 
     { 
      doc.MailMerge.RemoveEmptyRegions = true; 
     } 

     if (dtMedalInfo.Rows.Count > 0) 
     { 
      doc.MailMerge.TrimWhitespaces = false; 

      dtMedalInfo.TableName = "Medal"; 
      doc.MailMerge.ExecuteWithRegions(dtMedalInfo); 
     } 

     if (dtUnMissionInfo.Rows.Count > 0) 
     { 
      doc.MailMerge.TrimWhitespaces = false; 
      dtUnMissionInfo.TableName = "UnMission"; 
      doc.MailMerge.ExecuteWithRegions(dtUnMissionInfo); 
     } 


     doc.MailMerge.CleanupOptions = MailMergeCleanupOptions.RemoveUnusedRegions | MailMergeCleanupOptions.RemoveUnusedFields | MailMergeCleanupOptions.RemoveContainingFields | MailMergeCleanupOptions.RemoveEmptyParagraphs; 

     doc.MailMerge.DeleteFields(); 

     //Save the document 
     doc.Save(output); 

     ViewReport(fileName); 
+0

Il semble que vous ne pouvez pas joindre des fichiers dans ce forum. Nous devons tester ce scénario de notre côté. Donc, s'il vous plaît créer un nouveau message dans [forum Aspose.Words] (https://www.aspose.com/community/forums/aspose.words-product-family/75/showforum.aspx). S'il vous plaît zip et attachez votre 1) fichier Word d'entrée, 2) Aspose.Words généré le document Word de sortie, 3) votre document Word attendu et Application console simplifiée (code source sans erreurs de compilation) dans votre thread pour le test. Nous étudierons le scénario de notre côté et vous fournirons plus d'informations. Je travaille avec Aspose en tant que développeur évangéliste. –

Répondre