Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Número de KB original: 4020759
Sintoma
Suponha que você crie um novo objeto MailItem, AppointmentItem ou MeetingItem usando o Modelo de Objeto do Outlook. Em seguida, você define a propriedade HtmlBody do item como uma fonte HTML bem formada anteriormente que contém estilos CSS (Folha de Estilo em cascata). Depois de chamar o método Display e o método Enviar para enviar o item, a formatação ditada pelos estilos CSS configurados pode desaparecer ou os estilos de parágrafo podem ser substituídos pela MSONormal
classe.
Motivo
O Microsoft Outlook usa o Microsoft Word como editor. A perda de formatação pode ocorrer quando a origem HTML é validada pelo mecanismo HTML Word quando o item é enviado.
Solução alternativa
Recomendamos que você use o objeto WordEditor subjacente do inspetor para editar os corpos html e formato de texto avançado (RTF) de itens do Outlook quando você usa o Modelo de Objeto do Outlook, em vez de editar a HtmlBody
propriedade. Confira o seguinte exemplo:
Observação
Consulte Word Modelo de Objeto para obter mais informações.
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();
}
}
}