SerializerWriter Class
.NET Framework 3.0
Defines the abstract methods that are required to implement a plug-in document output serializer.
Namespace: System.Windows.Documents.Serialization
Assembly: PresentationFramework (in presentationframework.dll)
Assembly: PresentationFramework (in presentationframework.dll)
The following example illustrates the use of SerializerWriter. For the complete sample, see Document Serialization Sample.
// Create a SerializerProvider for accessing plug-in serializers. SerializerProvider serializerProvider = new SerializerProvider(); // Locate the serializer that matches the fileName extension. SerializerDescriptor selectedPlugIn = null; foreach ( SerializerDescriptor serializerDescriptor in serializerProvider.InstalledSerializers ) { if ( serializerDescriptor.IsLoadable && fileName.EndsWith(serializerDescriptor.DefaultFileExtension) ) { // The plug-in serializer and fileName extensions match. selectedPlugIn = serializerDescriptor; break; // foreach } } // If a match for a plug-in serializer was found, // use it to output and store the document. if (selectedPlugIn != null) { Stream package = File.Create(fileName); SerializerWriter serializerWriter = serializerProvider.CreateSerializerWriter(selectedPlugIn, package); IDocumentPaginatorSource idoc = flowDocument as IDocumentPaginatorSource; serializerWriter.Write(idoc.DocumentPaginator, null); package.Close(); return true; }
// ------------------------ PlugInFileFilter -------------------------- /// <summary> /// Gets a filter string for installed plug-in serializers.</summary> /// <remark> /// PlugInFileFilter is used to set the SaveFileDialog or /// OpenFileDialog "Filter" property when saving or opening files /// using plug-in serializers.</remark> private string PlugInFileFilter { get { // Create a SerializerProvider for accessing plug-in serializers. SerializerProvider serializerProvider = new SerializerProvider(); string filter = ""; // For each loadable serializer, add its display // name and extension to the filter string. foreach (SerializerDescriptor serializerDescriptor in serializerProvider.InstalledSerializers) { if (serializerDescriptor.IsLoadable) { // After the first, separate entries with a "|". if (filter.Length > 0) filter += "|"; // Add an entry with the plug-in name and extension. filter += serializerDescriptor.DisplayName + " (*" + serializerDescriptor.DefaultFileExtension + ")|*" + serializerDescriptor.DefaultFileExtension; } } // Return the filter string of installed plug-in serializers. return filter; } }
System.Object
System.Windows.Documents.Serialization.SerializerWriter
System.Windows.Xps.XpsDocumentWriter
System.Windows.Documents.Serialization.SerializerWriter
System.Windows.Xps.XpsDocumentWriter
Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.Community Additions
ADD
Show: