J'ai le code ci-dessousCréer répéter les lignes de mot en utilisant Interop
string html = @"<table>
<tr>
<td>Column1</td>
<td>Column2</td>
</tr>
<tr>
<td>Column1 Data</td>
<td>Column 2 Data</td>
</tr></table>";
Ceci est juste une chaîne qui contient une table html (celui que j'ai en fait est assez énorme et je l'obtenir à partir d'une procédure stockée)
le code ci-dessous lit cette chaîne html et il insère dans un document Word
public static bool CreateFormattedWord(string html)
{
Application wordApp = new Application();
wordApp.Visible = true;
Document doc = wordApp.Documents.Add();
object missing = Type.Missing;
ContentControl contentControl = doc.ContentControls.Add(WdContentControlType.wdContentControlRichText, ref missing);
contentControl.Range.InsertFile(SaveToTemporaryFile(html), ref missing, ref missing, ref missing, ref missing);
Console.Read();
return true;
}
public static string SaveToTemporaryFile(string html)
{
string htmlTempFilePath = System.IO.Path.Combine(System.IO.Path.GetTempPath(), string.Format("{0}.html", System.IO.Path.GetRandomFileName()));
using (StreamWriter writer = File.CreateText(htmlTempFilePath))
{
html = string.Format("<html>{0}</html>", html);
writer.WriteLine(html);
}
return htmlTempFilePath;
}
je peux aller au mot créé le document sélectionnez la table que j'inséré et aller mises en page et cliquez sur REPEA t En-tête de tableau et il répète cela dans le document.
Comment puis-je obtenir la même fonctionnalité en utilisant Interop dans le code que j'ai, de façon à ce que les en-têtes Table soient répétés lorsque la table est insérée dans le document?
Soyez sûr d'accepter votre réponse :) – cubrr
Salut user1221989, vous êtes en mesure d'accepter cette répondre, comme @cubrr a suggéré? Merci. Ping-moi si vous n'êtes pas sûr de savoir comment le faire. – halfer
Cela ne fonctionne pas pour moi, l'en-tête ne se répète jamais sur les lignes – R2D2