阿牛 - 专注.NET开发

如果梦想与实现之间有一道不可逾越的鸿沟,那么“执行力”就是跨越这道鸿沟的桥梁。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

发现的问题

如下图,多出个Main Report,看上去很碍眼,得想办法除掉.但在CrystalReportViewer的控件中,没有对应的属性可以直接隐藏.

untitled2

Google一番,发现MSDN论论上也有人问此问题.

http://social.msdn.microsoft.com/Forums/en-US/vscrystalreports/thread/405aecc9-f5fa-47d3-afa1-15a9256b395e

 

解决方法

增加如下代码:

       private void Form1_Load(object sender, EventArgs e)

        {

           HideTabs(this.crystalReportViewer1);

        }

 

        public void HideTabs(CrystalReportViewer viewer)

        {

            foreach (Control control in viewer.Controls)

            {

                if (control is PageView)

                {

                    TabControl tab = (TabControl)((PageView)control).Controls[0];

 

                    tab.ItemSize = new Size(0, 1);

                    tab.SizeMode = TabSizeMode.Fixed;

                    tab.Appearance = TabAppearance.Buttons;

 

                }

            }

        }

 

再跑报表,MainReport消失了!

untitled

 

进一步完善

其实,我们可以继承一个CrystalReportViewr,然后自定义一些功能(如增加一个导出PDF的按钮)或重写它的功能(如隐藏MainReport).留给大家自己动手试吧.

可以参考:http://msdn.microsoft.com/en-us/library/ms227538.aspx

posted on 2009-08-26 10:01  阿牛-专注金融行业开发  阅读(347)  评论(0编辑  收藏  举报