ActiveReport Tutorials For 2.0J(一)--Control and Property

Control and Property RichTextBox
合计用TextBox
计算用TextBox
KeepTogetherOption
ExportingOutput
Layout的保存和载入(MemoryStream例)
CustomizingtheViewerControl
SpreadBuilder(AR的Excel作成类)
页码的设定
newpage属性

 

RichTextBox
ActiveReport Tutorials For 2.0J(一)--Control and Property_第1张图片 

         [!fieldname]   fieldname是datasource里面的列名
         可以想象,我们平时收到的那些账单,会不会就是这样子出来的呢?

Return

 

合计用TextBox
ActiveReport Tutorials For 2.0J(一)--Control and Property_第2张图片

            「DateField」选择合计列,「SummaryFunc」选择合计函数种类,「SummaryGroup」选择合计后reset的组名,「SummaryRunning」选择分组,分页或者全部

Return

 

 计算用TextBox
ActiveReport Tutorials For 2.0J(一)--Control and Property_第3张图片

             在「DateField」里自定义公式。

 Return
 


 KeepTogetherOption
ActiveReport Tutorials For 2.0J(一)--Control and Property_第4张图片

GroupKeepTogether
None group header之后允许直接换页
FirstDetail group header和FirstDetail之后允许直接换页
All 直到group footer,整个group必须在一个页面上(一般选择这个)

NewPage
分组换页
  Return



 ExportingOutput
ActiveReport Tutorials For 2.0J(一)--Control and Property_第5张图片

1          private   void  Form1_Load( object  sender, System.EventArgs e)
2          {
3            rptExports rpt = new rptExports();
4            this.viewer1.Document = rpt.Document;
5            rpt.Run(false);
6
7            pdfExport1.Export(rpt.Document, Application.StartupPath + "\\PDFExpt.PDF");
8        }

代码控制的output

  Return



 Layout的保存和载入(MemoryStream例)
 1          private   void  Form1_Load( object  sender, System.EventArgs e)
 2          {
 3            System.IO.MemoryStream strm = new System.IO.MemoryStream();
 4            rptMemoryStream rpt = new rptMemoryStream();
 5            rpt.Run();
 6            rpt.Document.Save(strm);
 7            
 8            byte[] theBytes = new byte[strm.Length];
 9            strm.Read(theBytes, 0, (int)strm.Length);
10            
11            strm.Position = 0;
12            viewer1.Document.Load(strm);
13        }

保存分为Stream和文件2种
public void Save(Stream);
public void Save(Stream,RdfFormat);
public void Save(Stream,RdfFormat,SaveOptions);

public void Save(string);
public void Save(string,RdfFormat);
public void Save(string,RdfFormat,SaveOptions);

同样,载入也是一样2种
public void Load(Stream);

public void Load(string);

  Return



 CustomizingtheViewerControl
ActiveReport Tutorials For 2.0J(一)--Control and Property_第6张图片

 1
 2          private   void  Form1_Load( object  sender, System.EventArgs e)
 3          {
 4            // デフォルトの印刷ボタンを削除します。
 5            this.viewer1.Toolbar.Tools.RemoveAt(2);
 6
 7            // カスタムボタンを作成します。
 8            DataDynamics.ActiveReports.Toolbar.Button btn = new DataDynamics.ActiveReports.Toolbar.Button();
 9            btn.Caption = "MyPrint";
10            btn.ToolTip = "Custom Print Button";
11            btn.ImageIndex = 1;
12            btn.ButtonStyle = DataDynamics.ActiveReports.Toolbar.ButtonStyle.TextAndIcon;
13            btn.Id = 333;
14            this.viewer1.Toolbar.Tools.Insert(2,btn);
15
16            ActiveReport1 rpt = new ActiveReport1();
17            this.viewer1.Document = rpt.Document;
18            rpt.Run();
19        }

20
21          private   void  viewer1_ToolClick( object  sender, DataDynamics.ActiveReports.Toolbar.ToolClickEventArgs e)
22          {
23            // 作成したボタンをクリックしたときにダイアログを表示します。
24            if(e.Tool.Id == 333)
25            {
26                frmPrintDlg dlg = new frmPrintDlg();
27                dlg.ShowDialog(this);
28            }

29
30        }

个性化Toolbar的事例
比方说印刷buttom的显示与不显报表的output自定义buttom等等
右上方的分割功能(AR自带功能
AR不像CR那样可以在属性框里对Toolbar进行设置,只能通过代码控制(印刷buttom的index为2

Return



 SpreadBuilder(AR的Excel作成类)
 1          private   void  Form1_Load( object  sender, System.EventArgs e)
 2          {
 3            //ワークブックのシートコレクションにシートを追加します。    
 4            //Dimension a Workbook and add a sheet to its Sheets collection 
 5            DataDynamics.SpreadBuilder.Workbook sb = new DataDynamics.SpreadBuilder.Workbook();
 6            sb.Sheets.AddNew();
 7            //列、行およびセルに対し、プロパティや値を設定します。
 8            //Set up properties and values for columns, rows and cells as desired
 9            sb.Sheets[0].Name = "Customer Call List";
10            sb.Sheets[0].Columns(0).Width = 2 * 1440;
11            sb.Sheets[0].Columns(1).Width = 1440;
12            sb.Sheets[0].Columns(2).Width = 1440;
13            sb.Sheets[0].Rows(0).Height = 1440/4;
14            //ヘッダ行
15            //Header row 
16            sb.Sheets[0].Cell(0,0).SetValue("会社名");
17            sb.Sheets[0].Cell(0,0).FontName = "MS UI Gothic";
18            sb.Sheets[0].Cell(0,0).FontBold = true;
19            sb.Sheets[0].Cell(0,1).SetValue("部署名");
20            sb.Sheets[0].Cell(0,1).FontName = "MS UI Gothic";
21            sb.Sheets[0].Cell(0,1).FontBold = true;
22            sb.Sheets[0].Cell(0,2).SetValue("電話番号");
23            sb.Sheets[0].Cell(0,2).FontName = "MS UI Gothic";
24            sb.Sheets[0].Cell(0,2).FontBold = true;
25            //最初の行のデータ
26            //First row of data 
27            sb.Sheets[0].Cell(1,0).SetValue("グレープシティ");
28            sb.Sheets[0].Cell(1,0).FontName = "MS UI Gothic";
29            sb.Sheets[0].Cell(1,1).SetValue("営業部");
30            sb.Sheets[0].Cell(1,1).FontName = "MS UI Gothic";
31            sb.Sheets[0].Cell(1,2).SetValue("(022) 777-8210");
32            //ワークブックをExcelファイルへ保存します。
33            //Save the Workbook to an Excel file
34            sb.Save (Application.StartupPath + @"\x.xls");
35            MessageBox.Show(Application.StartupPath + @"\x.xls" + "へ保存しました。");
36        }

和NetAdvantage一样,都有Excel的作成类。
不过功能么,自然没有Excel的ActiveX来的强咯,比方说对sheet进行密码保护。
不过,如果在客户端不安装office组件,或者客户端的office版本比开发环境的版本低的话,ActiveX就不能执行。
如果只是简单的Excel话,就算没有office组件,这种Excel作成类就派上用处了。

Return

 页码的设定
分组分页

ActiveReport Tutorials For 2.0J(一)--Control and Property_第7张图片

ActiveReport Tutorials For 2.0J(一)--Control and Property_第8张图片

普通分页
ActiveReport Tutorials For 2.0J(一)--Control and Property_第9张图片

ActiveReport Tutorials For 2.0J(一)--Control and Property_第10张图片

关于分组化,请参看 KeepTogetherOption
Return

 NewPage属性

NewPageConstants定数

機   能       セクションの出力後にコラムを改め既存のコラムを終了するか、またはセクションの出力前にコラムを改め新規コラムを開始するかを設定します。

 

ddNPNone                    セクションの前後で改ページまたは新規コラムを開始しません

ddNPBefore                  新規ページ上でセクションの出力を開始します

ddNPAfter                    セクションを出力した後で新規ページまたは新規コラムを開始します

ddNPBeforeAfter          新規ページ上でセクションの出力を開始し、出力の完了時に新規ページまたは新規コラムを開始します



Private   Sub Detail_Format()
     
If Me.txt_RowNo.Text Mod 25 = 1 And Me.txt_RowNo.Text > 25 Then
          
' ページにレコードが25つある場合、新しいページを追加し、カウンタをリセットします。
          Detail.NewPage = ddNPBefore
     
Else
          
' 新ページの追加を無効にします
          Detail.NewPage = ddNPNone
            
     
End If

End Sub

25行一页,小组合计跟在最后一行
(小组最后一页,最多26行)



Return

你可能感兴趣的:(property)