Crystal Reports ViewerのBusinessObjectロゴを消す
Crystal Reports XI R2でWindowsアプリケーションを作成すると、Crystal Reports Viewerの右上に、「BusinessObject」というロゴが表示されます。これ、プロパティーの設定とかじゃ消えないんですね。WEBアプリケーションの方は、プロパティーの設定で消えるみたいなんですけどね。
で、非常に気になるわけです。なんで、BusinessObjectの宣伝しないといけないのかと・・・。
というわけで、コードで消してみることにします。
- private void toolStripButton_Click(object sender, EventArgs e)
- {
- List<system.Windows.Forms.ToolStripLabel> lbls = new List<toolStripLabel>();
- // コントロールオブジェクトに分解
- foreach (Control ctl in crystalReportViewer.Controls)
- {
- // ツールバーを取得
- if (ctl.GetType().Equals(typeof(System.Windows.Forms.ToolStrip)))
- {
- System.Windows.Forms.ToolStrip strip = (System.Windows.Forms.ToolStrip)ctl;
- // ツールバーをアイテムに分解
- foreach (ToolStripItem item in strip.Items)
- {
- MessageBox.Show(item.GetType().ToString());//アイテムの名前を列挙 実行時は不要
- // ラベルを取得
- if (item.GetType().Equals(typeof(System.Windows.Forms.ToolStripLabel)))
- {
- lbls.Add((ToolStripLabel)item);
- }
- }
- }
- }
- // ラベル2個中の、2番目がロゴを表示
- lbls[1].Visible = false;//取りあえず非表示にしてみる
- MessageBox.Show("非表示にしました。");
- }
これを何かのイベントで呼び出せば、ロゴを非表示にできます。違うロゴを表示することはできませんでした。どうしても、BussinesObjectロゴが表示されてしまい、そのイメージに重なって別の指定したイメージが表示されてしまう状態です。解決するには、別のアプローチが必要かも知れない・・・。
まあ、非表示にできたからいいや。