При загрузке файла RTF в Windows Forms RichTextBox он теряет цвет фона ячеек таблицы. Если мы используем WPF RichTextBox и загружаем тот же файл, все отформатировано так, как должно.Windows.Forms.RichTextBox Lose table background colors
Я что-то упускаю, когда загружаю файл в Windows Forms RichTextBox?
RichTextBox фрагмент кода Windows Forms:
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog fDialog = new System.Windows.Forms.OpenFileDialog();
fDialog.Filter = "Rich Text Files (*.rtf)|*.rtf";
fDialog.Multiselect = false;
fDialog.RestoreDirectory = true;
if (fDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
if (fDialog.FileName != "")
{
richTextBox1.LoadFile(fDialog.FileName, RichTextBoxStreamType.RichText);
}
}
}
В приведенном выше фрагменте кода я также попытался с помощью
richTextBox1.Rtf = File.ReadAllText(fDialog.FileName);
и
richTextBox1.LoadFile(fDialog.FileName);
WPF RichTextBox фрагмент кода
private void load_file_Click(object sender, RoutedEventArgs e)
{
System.Windows.Forms.OpenFileDialog fDialog = new System.Windows.Forms.OpenFileDialog();
fDialog.Filter = "Rich Text Files (*.rtf)|*.rtf";
fDialog.Multiselect = false;
fDialog.RestoreDirectory = true;
if (fDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
if (fDialog.FileName != "")
{
FileStream fStream;
fStream = new FileStream(fDialog.FileName, FileMode.Open, FileAccess.Read, FileShare.Read);
richtextbox1.SelectAll();
richtextbox1.Selection.Load(fStream, DataFormats.Rtf);
fStream.Close();
}
}
}
Вот снимок экрана с обеих версий:
Заранее спасибо за любую помощь.
Steve.
Спасибо за комментарии, фрагменты были взяты из быстрых тестовых проектов, которые я создал, чтобы мы могли исправить проблему в гораздо большей проекта, где мы используем заявления. – SteveP