Вопрос по Designercontrol
С PreviewControl все понятно. На форму кидаем этот компонент, называем, например, preview1. Отчету report устанавливаем свойство Preview: report.Preview = preview1. Вызываем report.Show(). Отчет отображается в контроле preview1. А вот как тоже самое сделать для дизайна отчета - так и не понял. Свойство report..Designer доступно только на чтение .
Комментарии
DesignerControl designer = new DesignerControl();
designer.Parent = your_form;
designer.Report = your_report;
Немного странно, что вроде превью и дизайнер работают с отчетом, а присвоение этого самого отчета у них происходит диаметрально противоположными способами. Лично мне по душе вариант как у дизайнера designer.Report = your_report; - удобно «отцеплять» отчет от него: designer.Report = null. А вот у превью это свойство опять только на чтение.
На форме лежит DesignerControl designer
присаиваем ему отчет report
вызываем report.Design()
меняем, что нибудь в отчете
вызываем designer.CloseAll() -> появляется окошко подтверждения.
Жмем "Нет".
снова вызываем вызываем report.Design() -> изменения сохранились! Т.е. если снова вызвать report.Design() внесенные, но "не сохраненные" изменения присутствуют. Если же перезагрузить отчет из файла, то несохраненных изменений не будет.
(версия FastReport.dll 1.0.233.0)
Можно ли сделать так, чтоб при нажатии на кнопке "Нет" внесенные изменения откатывалиь бы и в объекте report?