Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Oryginalny numer KB: 4020759
Objaw
Załóżmy, że utworzysz nowy obiekt MailItem, AppointmentItem lub MeetingItem przy użyciu modelu obiektów programu Outlook. Następnie należy ustawić właściwość HtmlBody elementu na wcześniej utworzone dobrze sformułowane źródło HTML zawierające style kaskadowego arkusza stylów (CSS). Po wywołaniu metody Display i metody Send w celu wysłania elementu formatowanie podyktowane skonfigurowanymi stylami CSS może zniknąć lub style akapitu mogą zostać zastąpione przez klasę MSONormal
.
Przyczyna
Program Microsoft Outlook używa programu Microsoft Word jako edytora. Utrata formatowania może wystąpić, gdy źródło HTML jest weryfikowane przez aparat html Word podczas wysyłania elementu.
Obejście problemu
Zalecamy użycie podstawowego obiektu WordEditor inspektora do edytowania treści HTML i formatu rtf (Rich Text Format) elementów programu Outlook podczas korzystania z modelu obiektów programu Outlook zamiast edytowania HtmlBody
właściwości. Zobacz poniższy przykład.
Uwaga
Aby uzyskać więcej informacji, zobacz model obiektów Word.
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();
}
}
}