Активные отчеты Изображение разделено

Я использую ActiveReports в своем приложении. Это непрерывный отчет, который содержит более 100 страниц. В отчете также есть SubReports. Он содержит как текст, так и несколько изображений.

Теперь, когда отчет сгенерирован, изображение в основном отчете разделяется на две части и отображается. Например, если на странице 5 есть изображение, оно разделяется, и первая половина отображается на 5-й странице, а 2-я половина отображается на 6-й странице.

После нескольких поисков я обнаружил, что вставка page break помогает. Но как я узнаю, что страница report заканчивается, а на ней есть image, и поэтому мне нужно вставить page break? Или есть лучшее решение?

Разрыв изображения


person A Coder    schedule 08.04.2016    source источник


Ответы (2)


установите для свойства раздела keeptogether значение true, и ActiveReports будет следить за тем, чтобы раздел оставался вместе и не разделялся на страницы. надеюсь это поможет.

person GrapeCity Team    schedule 08.04.2016
comment
В разделе много панелей, что делает свойство истинным пропуском, если весь раздел не помещается. Мне просто нужна только панель изображений, чтобы проверить, подходит ли она. - person A Coder; 11.04.2016
comment
Любой другой способ достижения? - person A Coder; 18.05.2016

После нескольких поисков я нашел ответ здесь

Объединение типа вопросов и ответов,

2 способа добиться этого,

Для элемента управления нет свойства KeepTogether. Единственный способ указать, что он должен храниться вместе, — это поместить элемент управления в раздел со свойством «держать вместе» раздела, установленным в значение true. В данном случае такое решение не сработает.

1. Один из подходов заключается в том, чтобы иметь элемент управления PageBreak прямо над элементом управления, и вам придется динамически вычислять, где вы находитесь на странице. Затем вы можете использовать метод MeasureParagraphHeight, чтобы увидеть, какой высоты должен быть элемент управления для отображения его текста, и установить для свойства enable PageBreak значение true, если он не помещается на странице. В этом подходе вам также необходимо учитывать высоту полей.

Если есть SubReports, к сожалению, SubReports не всегда следуют правилам KeepTogether. На самом деле следует избегать подотчетов, если в этом нет крайней необходимости, поскольку вы запускаете дополнительный отчет, и это увеличивает накладные расходы.

2. В этом случае я бы фактически использовал другой раздел заголовка группы, свойство datafield которого установлено на что-то, что повторяется для каждой строки данных. Затем переместите существующие элементы управления в разделе сведений в этот внутренний GroupHeader. Элементы управления по-прежнему будут отображать одну строку данных. Затем элемент управления можно изолировать в своем собственном разделе с установленным свойством раздела KeepTogether.

Я использовал второй метод для достижения своей работы.

person A Coder    schedule 18.05.2016