Wir haben eine relativ komplizierten Report. Dieser besteht aus mehreren Abschnitten, deren Hauptteil ein RTF-Feld ist. Der Report funktioniert grundsätzlich ganz gut.
Nun haben wir das Problem, dass bei manchen Eingaben unvorhersehbar Seitenumbrüche entstehen.
Diese Umbrüche entstehen, unserer Betrachtung nach, insbesondere dann, wenn das RTF eine Aufzählung enthält, mit dieser abschließt und das RTF wegen einem Seitenwechsel umgebrochen werden muss.
Z.B. wurde uns eine Ausgabe ähnlich dieser gemeldet:
Das Problem lässt sich als Workaround beheben, indem man NACH der Aufzählung zwei Leerzeilen oder ein Zeichen (hier der Text “ENDE”) einfügt.
Das unseren Kunden vorzuschreiben, ist aber nicht zufriedenstellend.
Der RTF-Text kommt aus normalen .NET WinForms RichTextBoxen.
Die Aufzählung wird durch
.SelectionBullet = True
.SelectionIndent = 0
.SelectionHangingIndent = 12
erzeugt.
Mit einem einfachen Report, in dem nur die RTF-Felder ausgegeben werden, konnten wir das Problem nicht nachstellen.
Es hängt also vielleicht auch irgendwie damit zusammen, dass links und rechts der RTF-Felder inline Tabellen enthalten sind, die Grafiken aus einer untergeordneten Datenquelle anzeigen. Sowohl die inline Tabellen als auch die Grafiken in diesen haben feste Breite aber keine feste Höhe. Im Designer werden keine Konflike (“Tabellenbreite ist möglicherweise zu klein” o.ä.) angezeigt.
Der Fehler tritt sowohl in LL29 als auch LL30 auf.