This documentation is archived and is not being maintained.

XpsDocument::AddFixedDocumentSequence Method

Adds a root FixedDocumentSequence to the package and returns a writer.

Namespace:  System.Windows.Xps.Packaging
Assembly:  ReachFramework (in ReachFramework.dll)

public:
IXpsFixedDocumentSequenceWriter^ AddFixedDocumentSequence()

Return Value

Type: System.Windows.Xps.Packaging::IXpsFixedDocumentSequenceWriter
The XML Paper Specification (XPS) fixed-document sequence writer for this XpsDocument.

Although this class uses a singular name, an XpsDocument can be a set (sequence) of one FixedDocument or multiple documents.

The following example shows how to use the AddFixedDocumentSequence method to insert content into an XpsDocument.


// ------------------------- AddPackageContent ----------------------------
/// <summary>
///   Adds a predefined set of content to a given XPS document.</summary>
/// <param name="xpsDocument">
///   The package to add the document content to.</param>
/// <param name="attachPrintTicket">
///   true to include a PrintTicket with the
///   document; otherwise, false.</param>
void AddPackageContent (XpsDocument^ xpsDocument, bool attachPrintTicket) 
{
   try
   {
      PrintTicket^ printTicket = GetPrintTicketFromPrinter();
      // PrintTicket is null, there is no need to attach one.
      if (printTicket == nullptr)
      {
         attachPrintTicket = false;
      }
      // Add a FixedDocumentSequence at the Package root
      IXpsFixedDocumentSequenceWriter^ documentSequenceWriter = xpsDocument->AddFixedDocumentSequence();

      // Add the 1st FixedDocument to the FixedDocumentSequence. - - - - -
      IXpsFixedDocumentWriter^ fixedDocumentWriter = documentSequenceWriter->AddFixedDocument();

      AddDocumentContent(fixedDocumentWriter);

      // Commit the 1st Document
      fixedDocumentWriter->Commit();

      // Add a 2nd FixedDocument to the FixedDocumentSequence. - - - - - -
      fixedDocumentWriter = documentSequenceWriter->AddFixedDocument();

      // Add content to the 2nd document.
      AddDocumentContent(fixedDocumentWriter);

      // If attaching PrintTickets, attach one at the FixedDocument level.
      if (attachPrintTicket)
      {
         fixedDocumentWriter->PrintTicket = printTicket;
      }
      // Commit the 2nd document.
      fixedDocumentWriter->Commit();

      // If attaching PrintTickets, attach one at
      // the package FixedDocumentSequence level.
      if (attachPrintTicket)
      {
         documentSequenceWriter->PrintTicket = printTicket;
      }
      // Commit the FixedDocumentSequence
      documentSequenceWriter->Commit();
   } catch (XpsPackagingException^ xpsException)
   {
      throw xpsException;

   } 
};// end:AddPackageContent()


.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Show: