ActiveReports 18 .NET Edition
Developers / Work with Reports using Code / Section Report / Save and Load RDF Files / Add and Save Annotations
In This Topic
    Add and Save Annotations
    In This Topic

    In a Section Report, you can save a report containing annotations along with the report data into an RDF file. You can also add annotations at run time. The following steps demonstrate how to accomplish these tasks in code. 

    These steps assume that you have already added a Section Report (code based) template in a Visual Studio project.  

    Save annotations

    The following example shows how to add a Save Annotated Report button to the viewer and save a report with annotations in RDF.

    1. From the Visual Studio toolbox, drag a Button control onto the viewer.
    2. Set the Text property of the button to Save Annotated Report.
    3. Double-click the button. This creates an event-handling method for the button Click event.
    4. Add code to the click handler to save the document to an RDF file. See Save and Load RDF Files for more information on loading the saved RDF file into the viewer.

      To write the code in Visual Basic.NET

      Visual Basic.NET code. Paste INSIDE the button Click event.
      Copy Code
      Me.Viewer1.Document.Save("C:\UserAnnotations.rdf")

      To write the code in C#

      C# code. Paste INSIDE the button Click event.
      Copy Code
      this.viewer1.Document.Save("C:\\UserAnnotations.rdf");

    Add annotations in code

    The following example shows how to add annotations at run time and save the report data and annotations to an RDF file.

    1. Double-click the title bar of the Form in which you host the viewer. This creates an event-handling method for the Form_Load event.
    2. Add code to the handler to run the report, add annotations, display the report in the viewer, and save it into an RDF file.

      To write the code in Visual Basic.NET

      Visual Basic.NET code. Paste ABOVE the class.
      Copy Code
      Imports GrapeCity.ActiveReports.Document.Section.Annotations
      Visual Basic.NET code. Paste INSIDE the Form Load event.
      Copy Code
         Dim rpt As New SectionReport1
         'Run the report first.
         rpt.Run()
      
         'Assign the viewer.
         Me.Viewer1.LoadDocument(rpt.Document)
      
         'Create an annotation and assign property values.
         Dim circle As New AnnotationCircle
         circle.Color = System.Drawing.Color.GreenYellow
         circle.Border.Color = System.Drawing.Color.Chartreuse
      
         'Add the annotation.
         circle.Attach(1,1) 'screen location
         Me.Viewer1.Document.Pages(0).Annotations.Add(circle)
      
         'Set the size properties. The annotation must be added to the page first.
         circle.Height = 0.25
         circle.Width = 0.50
      
         'Save annotations with the report in an RDF file.
         rpt.Document.Save("C:\AnnotatedReport.rdf")
      

      To write the code in C#

      C# code. Paste ABOVE the class.
      Copy Code
      using GrapeCity.ActiveReports.Document.Section.Annotations;
      C# code. Paste INSIDE the Form Load event.
      Copy Code
         SectionReport1 rpt = new SectionReport1();
         //Run the report first.
         rpt.Run();
         
         //Assign the viewer
         this.viewer1.LoadDocument(rpt.Document);
         
         //Create an annotation and assign property values.
         AnnotationCircle circle = new AnnotationCircle();
         circle.Color = System.Drawing.Color.GreenYellow;
         circle.Border.Color = System.Drawing.Color.Chartreuse;
        
         //Add the annotation.
         circle.Attach(1,1); //screen location
         this.viewer1.Document.Pages[0].Annotations.Add(circle);
      
         //Set the size properties. The annotation must be added to the page first.
         circle.Height = 0.25f;
         circle.Width = 0.50f;
      
         //Save annotations with the report in an RDF file.
         rpt.Document.Save("C:\\AnnotatedReport.rdf");
      
    See Also

    Report Readers