找回密码
 立即注册

QQ登录

只需一步,快速开始

jessie

银牌会员

29

主题

85

帖子

2482

积分

银牌会员

积分
2482

活字格认证

jessie
银牌会员   /  发表于:2011-10-27 17:15  /   查看:7305  /  回复:9
我想在程序里动态添加一个CrossSectionBox1,具体写程序的时候,把它add到哪个section呢?

Me.Sections(&quotageHeader").Controls.Add(arControl)
Me.Sections(&quotageFooter").Controls.Add(arControl)
Me.Sections("Detail").Controls.Add(arControl)

谢谢?

9 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-10-27 17:53:00
沙发
  1.         private void rptTest_ReportStart(object sender, EventArgs e)
  2.         {
  3.             CrossSectionBox cs = new CrossSectionBox();
  4.             cs.Bottom = 0.25F;
  5.             cs.Left = 3F;
  6.             cs.LineWeight = 1F;
  7.             cs.Name = "cs1";
  8.             cs.Right = 5F;
  9.             cs.Top = 0.25F;
  10.             this.groupHeader1.Controls.Add(cs);
  11.             //this.pageHeader.Controls.Add(cs);
  12.         }
复制代码
回复 使用道具 举报
jessie
银牌会员   /  发表于:2011-10-27 17:57:00
板凳
我的报表没有 groupHeader
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-10-27 18:02:00
地板
CrossSectionBox 只能被添加到header中,如果没有Groupheader就只能添加到pageHeader中了
回复 使用道具 举报
jessie
银牌会员   /  发表于:2011-10-27 18:21:00
5#
好奇怪,为什么我add到 pageheader里面 显示不出来呢,程序不报错
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-10-28 09:40:00
6#

回复 5# jessie 的帖子

New一个CrossSectionBox 对象之后,需要设置它的Bottom 、Left 、Right 、Top 、LineWeight、LineColor 和Name 属性,请参考2楼中的代码。
回复 使用道具 举报
jessie
银牌会员   /  发表于:2011-10-28 10:03:00
7#
Dim tb As New DataDynamics.ActiveReports.CrossSectionBox
                Dim pf As New System.Drawing.PointF
                Dim pf2 As New System.Drawing.PointF
               
                pf.X = 0
                pf.Y = 0
                pf2.X = 5
                pf2.Y = 5
                tb.Start = pf
                tb.End = pf2
                tb.Visible = True
Me.Sections(&quotageHeader").Controls.Add(arControl)
以上写法,不显示

Dim tb As New DataDynamics.ActiveReports.CrossSectionBox
                tb.Left =0
                tb.Top = 0
                tb.Width = 5
                tb.Height = 5
                tb.LineWeight = 3
                tb.Visible = True
                Me.Sections(&quotageHeader").Controls.Add(arControl)
这种写法,也不显示
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-10-28 11:53:00
8#
从你的代码来看在添加控件的代码时我不理解:
Me.Sections(&quotageHeader").Controls.Add(arControl)
应该是这样的吧
Me.Sections(&quotageHeader").Controls.Add(tb)
  1.         Dim tb As New DataDynamics.ActiveReports.CrossSectionBox
  2.         tb.Left = 0.1
  3.         tb.Top = 0.1
  4.         tb.Width = 3
  5.         tb.Height = 5
  6.         tb.LineWeight = 3
  7.         tb.Visible = True
  8.         Me.Sections("PageHeader1").Controls.Add(tb)
复制代码
回复 使用道具 举报
jessie
银牌会员   /  发表于:2011-10-28 13:34:00
9#
阿,这样可以看见了,但是还有一个问题
                tb.Left = 0.1
                tb.Top = 0.1
                tb.Width = 1000
                tb.Height = 10

                tb.LineWeight = item.borderT
                tb.Visible = True
                Me.Sections(&quotageHeader").Controls.Add(tb)

我这样写,不管 tb.Width = 1000还是 tb.Width = 3,都页面上显示一个细细长长的框,好像宽度设置根本没起作用,不知道怎么回事
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-10-28 14:54:00
10#
其实你可以在报表的视图添加一个CrossSectionBox控件,如何查看它的各个属性设置:

  1.         '
  2.         'CrossSectionBox1
  3.         '
  4.         Me.CrossSectionBox1.Bottom = 0.15!
  5.         Me.CrossSectionBox1.Left = 0.0!
  6.         Me.CrossSectionBox1.LineWeight = 1.0!
  7.         Me.CrossSectionBox1.Name = "CrossSectionBox1"
  8.         Me.CrossSectionBox1.Right = 6!
  9.         Me.CrossSectionBox1.Top = 0.15!
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部