Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Print / Reach / Serialization / manager / ReachPageContentSerializerAsync.cs / 1 / ReachPageContentSerializerAsync.cs
/*++ Copyright (C) 2004- 2005 Microsoft Corporation All rights reserved. Module Name: ReachPageContentSerializerAsync.cs Abstract: This file contains the definition of a class that defines the common functionality required to serialize a PageContent. Author: [....] ([....]) 25-May-2005 Revision History: --*/ using System; using System.Collections; using System.Collections.Specialized; using System.ComponentModel; using System.Diagnostics; using System.Reflection; using System.Xml; using System.IO; using System.Printing; using System.Security; using System.Security.Permissions; using System.ComponentModel.Design.Serialization; using System.Windows.Xps.Packaging; using System.Windows.Documents; using System.Windows.Media; using System.Windows.Markup; namespace System.Windows.Xps.Serialization { ////// Class defining common functionality required to /// serialize a ReachPageContentSerializer. /// internal class ReachPageContentSerializerAsync : ReachSerializerAsync { #region Constructor ////// Constructor for class ReachPageContentSerializer /// /// /// The serialization manager, the services of which are /// used later in the serialization process of the type. /// public ReachPageContentSerializerAsync( PackageSerializationManager manager ): base(manager) { } #endregion Constructor #region Public Methods ////// /// public override void AsyncOperation( ReachSerializerContext context ) { if(context == null) { } switch (context.Action) { case SerializerAction.serializePage: { SerializePage(context.ObjectContext); break; } default: { base.AsyncOperation(context); break; } } } #endregion #region Internal Methods ////// The method is called once the object data is discovered at that /// point of the serialization process. /// /// /// The context of the object to be serialized at this time. /// internal override void PersistObjectData( SerializableObjectContext serializableObjectContext ) { if(serializableObjectContext.IsComplexValue) { ReachSerializerContext context = new ReachSerializerContext(this, serializableObjectContext, SerializerAction.serializePage); ((XpsSerializationManagerAsync)SerializationManager).OperationStack.Push(context); } else { throw new XpsSerializationException(ReachSR.Get(ReachSRID.ReachSerialization_WrongPropertyTypeForPageContent)); } } private void SerializePage( SerializableObjectContext serializableObjectContext ) { FixedPage fixedPage = Toolbox.GetPageRoot(serializableObjectContext.TargetObject); if(fixedPage != null) { ReachSerializer serializer = SerializationManager.GetSerializer(fixedPage); if(serializer!=null) { XpsSerializationPrintTicketRequiredEventArgs e = new XpsSerializationPrintTicketRequiredEventArgs(PrintTicketLevel.FixedPagePrintTicket, 0); ((XpsSerializationManagerAsync)SerializationManager).OnXPSSerializationPrintTicketRequired(e); PrintTicket printTicket = null; if( e.Modified ) { printTicket = e.PrintTicket; } Toolbox.Layout(fixedPage, printTicket); ((XpsSerializationManagerAsync)SerializationManager).FixedPagePrintTicket = printTicket; serializer.SerializeObject(fixedPage); } else { throw new XpsSerializationException(ReachSR.Get(ReachSRID.ReachSerialization_NoSerializer)); } } } #endregion Internal Methods }; } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ExpressionParser.cs
- AssociationTypeEmitter.cs
- FormsAuthenticationUserCollection.cs
- SqlDelegatedTransaction.cs
- MouseGestureValueSerializer.cs
- SQLGuidStorage.cs
- FilteredXmlReader.cs
- DbDataReader.cs
- ImageField.cs
- BitmapData.cs
- ZoneButton.cs
- WindowsScrollBar.cs
- GridViewRowEventArgs.cs
- IdentityNotMappedException.cs
- VBIdentifierName.cs
- ResXResourceReader.cs
- XmlAttributes.cs
- DirectoryInfo.cs
- RuleSetReference.cs
- ProtocolProfile.cs
- DecoderFallbackWithFailureFlag.cs
- PropertyFilterAttribute.cs
- TrackingProfile.cs
- WebDescriptionAttribute.cs
- InkPresenter.cs
- XPathNodeInfoAtom.cs
- DriveNotFoundException.cs
- DesignTimeTemplateParser.cs
- SingleAnimation.cs
- TagMapCollection.cs
- FusionWrap.cs
- FlowDocumentPaginator.cs
- IntAverageAggregationOperator.cs
- DataGridViewCellCancelEventArgs.cs
- _CacheStreams.cs
- MemberDescriptor.cs
- SafeMILHandle.cs
- SelectionRange.cs
- DrawListViewSubItemEventArgs.cs
- ToolStripDropDownItemDesigner.cs
- TaskForm.cs
- ComplexBindingPropertiesAttribute.cs
- ProxyAttribute.cs
- TextRange.cs
- MexTcpBindingCollectionElement.cs
- DbTypeMap.cs
- SystemTcpStatistics.cs
- SpeechRecognitionEngine.cs
- EventTrigger.cs
- Pipe.cs
- TextCompositionManager.cs
- ClockController.cs
- ScriptResourceAttribute.cs
- UnsafeNativeMethods.cs
- HtmlWindowCollection.cs
- Viewport3DAutomationPeer.cs
- DbMetaDataFactory.cs
- PropertyGeneratedEventArgs.cs
- mongolianshape.cs
- XpsImage.cs
- FillBehavior.cs
- ServiceContractListItemList.cs
- UnsafeCollabNativeMethods.cs
- DrawItemEvent.cs
- XmlHelper.cs
- BasicViewGenerator.cs
- WebRequestModuleElementCollection.cs
- ForceCopyBuildProvider.cs
- SubMenuStyle.cs
- PageAsyncTaskManager.cs
- WindowsFormsLinkLabel.cs
- HwndStylusInputProvider.cs
- BigIntegerStorage.cs
- Models.cs
- UriParserTemplates.cs
- TraceContextEventArgs.cs
- AggregateNode.cs
- LocatorPart.cs
- XsdCachingReader.cs
- TableDetailsCollection.cs
- ResourceAttributes.cs
- PropertyStore.cs
- ModulesEntry.cs
- CorrelationQueryBehavior.cs
- SqlFunctionAttribute.cs
- MultiBinding.cs
- SerializationSectionGroup.cs
- Highlights.cs
- SmiMetaDataProperty.cs
- ArgumentNullException.cs
- SoapServerMessage.cs
- TextHintingModeValidation.cs
- UnknownBitmapDecoder.cs
- TTSEngineTypes.cs
- InitializationEventAttribute.cs
- LoadRetryHandler.cs
- Descriptor.cs
- PickDesigner.xaml.cs
- cache.cs
- XamlInt32CollectionSerializer.cs