Formatierung beim Bearbeiten der HtmlBody-Eigenschaft eines Outlook-Elements mithilfe des Outlook-Objektmodells verloren
Ursprüngliche KB-Nummer: 4020759
Problembeschreibung
Angenommen, Sie erstellen ein neues MailItem-, AppointmentItem- oder MeetingItem-Objekt mithilfe des Outlook-Objektmodells. Anschließend legen Sie die HtmlBody-Eigenschaft des Elements auf einige zuvor erstellte wohlgeformte HTML-Quelle fest, die CSS-Formatvorlagen (Cascading Style Sheet) enthält. Nachdem Sie die Display-Methode und die Send-Methode aufgerufen haben, um das Element zu senden, wird die von den konfigurierten CSS-Formatvorlagen vorgegebene Formatierung möglicherweise nicht mehr angezeigt, oder die Absatzformate werden durch die MSONormal
-Klasse ersetzt.
Ursache
Microsoft Outlook verwendet Microsoft Word als Editor. Ein Formatierungsverlust kann auftreten, wenn die HTML-Quelle vom Word HTML-Engine überprüft wird, wenn das Element gesendet wird.
Problemumgehung
Es wird empfohlen, dass Sie das zugrunde liegende WordEditor-Objekt des Inspektors verwenden, um die HTML- und RTF-Texttexte (RTF) von Outlook-Elementen zu bearbeiten, wenn Sie das Outlook-Objektmodell verwenden, anstatt die HtmlBody
Eigenschaft zu bearbeiten. Beispiel:
Hinweis
Weitere Informationen finden Sie unter Word-Objektmodell.
using Outlook = Microsoft.Office.Interop.Outlook;
using Word = Microsoft.Office.Interop.Word;
namespace CreateAndEditMailItemUsingWord
{
class Program
{
static void Main(string[] args)
{
Outlook.MailItem mailItem = (new Outlook.Application()).CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);
Word.Document wordDocument = mailItem.GetInspector.WordEditor as Word.Document;
// Insert the text at the very beginning of the document
// You can control fonts and formatting using the ParagraphFormat propety of the Word.Range object
Word.Range wordRange = wordDocument.Range(0, 0);
wordRange.Text = "Please insert your text here";
mailItem.Display();
}
}
}
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für