私たちのアプリケーションでは、ユーザーが使用しているプリンターに応じて、非常に具体的なマージンを必要とするレポートがいくつかあります。これは、事前にフォーマットされた用紙に空白を埋めるために印刷するために使用され、プリンターによっては、印刷が若干のマージンでずれています。さらに悪いことに、内部アプリケーションではないため、実際に使用するプリンタを制御することはありません。
私が考えることができる唯一の解決策は、ユーザーに何らかの方法でマージンを構成させることです。データソースや実際のレポートの場合と同じように、レポートの余白を動的に変更できると思いました(アプリケーションからのすべてのレポートを表示するために使用されるコントロールが1つあり、正常に機能します)が、その気の利いたプロパティを見つけることができないようです。そうするために。レポートビューアにはmarginプロパティがありますが、これはフォーム表示用であるため、切り取られません。
誰かがその方法を知っていますか。私が考えていたのは、ユーザーがレポートをロードする前にマージンを定義することです。つまり、ユーザーがレポートボタンをクリックすると、レポートをロードし、マージンを設定して(またはその逆が必要です)、表示します。
誰かがそれについて言及する前に、私はユーザーがレポートがロードされたら、彼のニーズに合うようにページ設定を変更できることを知っていますが、これには2つの欠点があります。1つ目は、毎回保存されるわけではなく、ユーザーが「保存可能」である必要があるということです。2つ目は、地域の設定が期待どおりに設定されておらず、1つのアプリケーションに対応するようにユーザーに設定を変更させることができない場合、レポートビューアにいくつかのバグがあるようです。
編集:言及するのを忘れました、それはこれがどんな用途でもあります。私のレポートはすべてローカルレポートです。