ComponentOne Reports for WinForms Designer Edition: ComponentOne Reports for WinForms > Working with C1MultiDocument > C1MultiDocument Limitations

C1MultiDocument Limitations

The primary purpose of the C1MultiDocument component is to handle large documents that it would otherwise be impossible to create/export/print due to memory limitations. There are no limitations on the size and number of documents. But you may have to use disk storage rather than (default) memory, see the SetStorage methods for details.

A multi-document has a limitation that may or may not be significant depending on the specific application: it does NOT allow you to access the object model of C1PrintDocuments contained within. In other words, while you can write the following code:

      Visual Basic

Dim mdoc As New C1MultiDocument()

mdoc.Items.Add(C1PrintDocument.FromFile("file1.c1dx"))

mdoc.Items.Add(C1PrintDocument.FromFile("file2.c1dx"))

mdoc.Items.Add(C1PrintDocument.FromFile("file3.c1dx"))

      C#

C1MultiDocument mdoc = new C1MultiDocument();

mdoc.Items.Add(C1PrintDocument.FromFile("file1.c1dx"));

mdoc.Items.Add(C1PrintDocument.FromFile("file2.c1dx"));

mdoc.Items.Add(C1PrintDocument.FromFile("file3.c1dx"));

You CANNOT then add something like the following:

      Visual Basic

Dim doc As C1PrintDocument = mdoc.Items(1)

      C#

C1PrintDocument doc = mdoc.Items[1];

If that limitation is not an issue for a particular application, then you can even use the C1MultiDocument component to "modularize" the application even if there are no memory problems.


Send comments about this topic to ComponentOne.
Copyright © ComponentOne LLC. All rights reserved.