DataDynamics.ActiveReports заменяет текст во время выполнения, изменяет оригинальный формат

Я почти остался без времени, но столкнулся с проблемой с DataDynamics.ActiveReports.

Я должен заменить текст для 500 отчетов, чтобы автоматизировать задачу с помощью кода во время выполнения.

Основная проблема, с которой я сталкиваюсь, заключается в замене текста, исходный жирный шрифт которого не изменится на обычный шрифт. Выровненный по центру текст будет выровнен по левому краю, а также Arial Узкий текст изменится на Arial.

Есть ли способ заменить текст, не нарушая оригинальный формат.

Вот кусок кода:

var textBox = (DataDynamics.ActiveReports.RichTextBox)reportSection.Controls[controlIdx];                        
                        if (textBox.Text.Contains("Babu"))
                        {
                            MessageBox.Show(textBox.Text);
                            var modifiedtext = (DataDynamics.ActiveReports.RichTextBox)reportSection.Controls[controlIdx];
                            modifiedtext.Text = modifiedtext.Text.Replace("Babu", "Mannu");
                            MessageBox.Show(modifiedtext.Text);
                        } 

Измененный отчет имеет формат, отличный от исходного. Как исправить эту проблему??

1 ответ

Решение

Его richtext, а не простой текст.

с каждым форматированным текстом связано форматирование.

Попробуйте отредактировать исходный RTF, который вы загружаете в элемент управления RTB. Это то, что я бы порекомендовал.

Или другой подход может заключаться в использовании richtextbox.rtf.replac вместо richtextbox.text.

В какое время обработки отчета вы это делаете?

Другие вопросы по тегам