SerializerWriter Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет абстрактные методы и события, необходимые для реализации сериализатора выходных данных документа подключаемого модуля.
public ref class SerializerWriter abstract
public abstract class SerializerWriter
type SerializerWriter = class
Public MustInherit Class SerializerWriter
- Наследование
-
SerializerWriter
- Производный
Примеры
В следующем примере демонстрируется применение SerializerWriter.
// 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;
}
}
Конструкторы
SerializerWriter() |
Инициализирует новый экземпляр класса SerializerWriter. |
Методы
CancelAsync() |
При переопределении в производном классе отменяет асинхронную операцию записи. |
CreateVisualsCollator() |
При переопределении в производном классе возвращает объект SerializerWriterCollator, который записывает упорядоченные элементы Visual. |
CreateVisualsCollator(PrintTicket, PrintTicket) |
При переопределении в производном классе возвращает объект SerializerWriterCollator, который записывает упорядоченные элементы Visual вместе с данными билетами на печать. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Write(DocumentPaginator) |
При переопределении в производном классе синхронно записывает содержимое указанного объекта DocumentPaginator в поток Stream сериализации. |
Write(DocumentPaginator, PrintTicket) |
При переопределении в производном классе синхронно записывает содержимое, разбитое на страницы, вместе со связанным объектом PrintTicket в поток Stream сериализации. |
Write(FixedDocument) |
При переопределении в производном классе синхронно записывает данный объект FixedDocument в поток Stream сериализации. |
Write(FixedDocument, PrintTicket) |
При переопределении в производном классе синхронно записывает заданный объект FixedDocument вместе со связанным объектом PrintTicket в поток Stream сериализации. |
Write(FixedDocumentSequence) |
При переопределении в производном классе синхронно записывает данный объект FixedDocumentSequence в поток Stream сериализации. |
Write(FixedDocumentSequence, PrintTicket) |
При переопределении в производном классе синхронно записывает заданный объект FixedDocumentSequence вместе со связанным объектом PrintTicket в поток Stream сериализации. |
Write(FixedPage) |
При переопределении в производном классе синхронно записывает данный объект FixedPage в поток Stream сериализации. |
Write(FixedPage, PrintTicket) |
При переопределении в производном классе синхронно записывает заданный объект FixedPage вместе со связанным объектом PrintTicket в поток Stream сериализации. |
Write(Visual) |
При переопределении в производном классе синхронно записывает данный элемент Visual в поток Stream сериализации. |
Write(Visual, PrintTicket) |
При переопределении в производном классе синхронно записывает заданный элемент Visual вместе со связанным объектом PrintTicket в поток Stream сериализации. |
WriteAsync(DocumentPaginator) |
При переопределении в производном классе асинхронно записывает содержимое заданного объекта DocumentPaginator в поток Stream сериализации. |
WriteAsync(DocumentPaginator, Object) |
При переопределении в производном классе асинхронно записывает содержимое заданного объекта DocumentPaginator в поток Stream сериализации. |
WriteAsync(DocumentPaginator, PrintTicket) |
При переопределении в производном классе асинхронно записывает содержимое заданного объекта DocumentPaginator в поток Stream сериализации. |
WriteAsync(DocumentPaginator, PrintTicket, Object) |
Если переопределено в производном классе, асинхронно записывает содержимое, разбитое на страницы, со связанным объектом PrintTicket в поток Stream сериализации. |
WriteAsync(FixedDocument) |
При переопределении в производном классе асинхронно записывает заданный объект FixedDocument в поток Stream сериализации. |
WriteAsync(FixedDocument, Object) |
При переопределении в производном классе асинхронно записывает заданный объект FixedDocument в поток Stream сериализации. |
WriteAsync(FixedDocument, PrintTicket) |
При переопределении в производном классе асинхронно записывает заданный объект FixedDocument вместе со связанным объектом PrintTicket в поток Stream сериализации. |
WriteAsync(FixedDocument, PrintTicket, Object) |
При переопределении в производном классе асинхронно записывает заданный объект FixedDocument вместе со связанным объектом PrintTicket в поток Stream сериализации. |
WriteAsync(FixedDocumentSequence) |
При переопределении в производном классе асинхронно записывает заданный объект FixedDocumentSequence в поток Stream сериализации. |
WriteAsync(FixedDocumentSequence, Object) |
При переопределении в производном классе асинхронно записывает заданный объект FixedDocumentSequence в поток Stream сериализации. |
WriteAsync(FixedDocumentSequence, PrintTicket) |
При переопределении в производном классе асинхронно записывает заданный объект FixedDocumentSequence вместе со связанным объектом PrintTicket в поток Stream сериализации. |
WriteAsync(FixedDocumentSequence, PrintTicket, Object) |
При переопределении в производном классе асинхронно записывает заданный объект FixedDocumentSequence вместе со связанным объектом PrintTicket в поток Stream сериализации. |
WriteAsync(FixedPage) |
При переопределении в производном классе асинхронно записывает заданный объект FixedPage в поток Stream сериализации. |
WriteAsync(FixedPage, Object) |
При переопределении в производном классе асинхронно записывает заданный объект FixedPage в поток Stream сериализации. |
WriteAsync(FixedPage, PrintTicket) |
При переопределении в производном классе асинхронно записывает заданный объект FixedPage вместе со связанным объектом PrintTicket в поток Stream сериализации. |
WriteAsync(FixedPage, PrintTicket, Object) |
При переопределении в производном классе асинхронно записывает заданный объект FixedPage вместе со связанным объектом PrintTicket в поток Stream сериализации. |
WriteAsync(Visual) |
При переопределении в производном классе асинхронно записывает заданный элемент Visual в поток Stream сериализации. |
WriteAsync(Visual, Object) |
При переопределении в производном классе асинхронно записывает заданный элемент Visual в поток Stream сериализации. |
WriteAsync(Visual, PrintTicket) |
При переопределении в производном классе асинхронно записывает заданный элемент Visual вместе со связанным объектом PrintTicket в поток Stream сериализации. |
WriteAsync(Visual, PrintTicket, Object) |
При переопределении в производном классе асинхронно записывает заданный элемент Visual, а также связанный с ним объект PrintTicket и идентификатор в поток Stream сериализации. |
События
WritingCancelled |
При переопределении в производном классе происходит при выполнении операции CancelAsync(). |
WritingCompleted |
При переопределении в производном классе происходит, когда завершается пакетная операция записи. |
WritingPrintTicketRequired |
При переопределении в производном классе происходит непосредственно перед добавлением PrintTicket в поток методом Write или WriteAsync. |
WritingProgressChanged |
При переопределении в производном классе происходит, когда SerializerWriter обновляет значение степени выполнения. |