[FlexReport for WinForms] C1PrintOptionsのPageSettingsを設定したプログラムで、「型 'C1PageSettings' の値を 'PageSettings' に変換できません」というエラーを回避する方法

文書番号 : 82069     文書種別 : HowTo
登録日 : 2017/03/16     最終更新日 : 2017/03/16

対象製品

Studio for WinForms

詳細

C1STudio 2016 v2(ビルド2/4.0.20162.188)までは、C1PrintOptionsのPageSettingsは「C1.Win.C1Document.C1PageSettings」として宣言されていましたが、2016 v3(ビルド2/4.0.20163.226)では、「System.Drawing.Printing.PageSettings」に変更されました。

この変更は、FlexReport for WinformsのコードをFlexReport for WPFに移植する際に行われました。
FlexReport for Winformsでは従来、独自の型であるC1PageSettingsが使用されていましたが、Winforms/WPFの両者で標準システムの型を使用するほうが、より自然でよりよい選択であるとの結論に至ったためです。そこで、FlexReport for WinformsではシステムのPrinterSettings/PageSettingsが、FlexReport for WPFではPrintQueue/PrintTicketが使用されることとなりました。

このため、2016 v2以前のFlexReport for Winformsを用いて設定された以下のようなコードを、2016 v3のアセンブリを用いて実行すると、エラーが発生します。

◇サンプルコード(変更前)
C1PrintOptionst1.PageSettings = New C1.Win.C1Document.C1PageSettings

◇エラー
型 'C1PageSettings' の値を 'PageSettings' に変換できません。

このエラーを回避するには、上記コードを以下のように変更してください。

◇サンプルコード(変更後)
C1PrintOptionst1.PageSettings = New System.Drawing.Printing.PageSettings