2009-07-01 26 views
2

複数のテーブルを持つRDLCがあり、各テーブルに対して、レポートから対応するテーブルを非表示にするトグルテキストボックスアイテムがあります。しかし、これらのテキストボックスが印刷/エクスポートされたレポートに表示されることは望ましくありません。それらは実際にはコンテンツ自体ではなく、レポート内のコンテンツを無効にするためのものです。これらのトグルボックスを印刷レイアウトとエクスポートされたバージョンのレポートのみから非表示にする方法はありますか?rdlcレポートの印刷/エクスポートからレポートアイテムを非表示にする

レポートのテキストボックスのすべてのプロパティと、表示の切り替えに使用できる使用可能な式を調べましたが、アイテムを非表示にするために使用できるものは見つかりませんでした。私が欲しいと思うようなDataElementOutputプロパティがありますが、それはXMLにとってのみ有用であると私は信じています。

答えて

1

が、一つの解決策があります。ハンドルコントロールの可視性と印刷イベントでパラメータを追加し、パラメータ値を変更してからレポートを更新することができます(ReportViewer1.RefreshReport())

0

あなたが達成しようとするいくつかのハックを行うことができますように: - あなたのテキストボックスにテキストと境界を設定することが クリッカブルまだ彼らはないvislbleあるので、白が、なければ - プリントサイズ(用紙サイズ)より報告を大きくすると、テキストボックスを印刷領域外に移動します(印刷/エクスポートされますが、テーブルのような同じページには表示されません) - テキストボックスを一番上に置き、さまざまなビューを可能にするタブのようにデザインします(私は知っています、これはあなたが求めたものではありません:-))

しかし、これを解決する最も良い方法は、レポートを複数のレポートに分割することです。

願っています!

歓声、

ペロ後期

1

これは、単純な表示切り替えを使用して行うことができます。 RenderFormat.IsInteractive変数を使用して、レポートがレポートビューアに表示されるのか、エクスポートされるのかを判断できます。 MSDN article

、このグローバル変数については、これを説明するさらに、ブールフラグ(=グローバル!RenderFormat.IsInteractive) は、表示拡張機能は、インタラクティブレンダラ、 すなわちないエクスポート形式であるか否かを判断します。プレビュー(GDI/Winforms)とHTML表示は、 と解釈されます。

では、次の式に輸出して非表示にするテキストボックスの表示を設定し

=NOT(Globals!RenderFormat.IsInteractive) 

RenderFormat.IsInteractiveに割り当てられた値を知っている画像次(blog.hoegaerden.beの礼儀)を参照してください。 RenderFormat.IsInteractive

関連する問題