Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Print / Reach / Serialization / manager / NGCPageContentSerializerAsync.cs / 1 / NGCPageContentSerializerAsync.cs
/*++ Copyright (C) 2004- 2005 Microsoft Corporation All rights reserved. Module Name: NGCPageContentSerializerAsync.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.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 NgcPageContentSerializerAsync : NGCSerializerAsync { #region Constructor ////// Constructor for class ReachPageContentSerializer /// /// /// The serialization manager, the services of which are /// used later in the serialization process of the type. /// public NgcPageContentSerializerAsync( PackageSerializationManager manager ): base(manager) { } #endregion Constructor #region Public Methods ////// /// public override void AsyncOperation( NGCSerializerContext 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) { NGCSerializerContext context = new NGCSerializerContext(this, serializableObjectContext, SerializerAction.serializePage); ((NgcSerializationManagerAsync)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) { NgcSerializationManagerAsync manager = SerializationManager as NgcSerializationManagerAsync; XpsSerializationPrintTicketRequiredEventArgs e = new XpsSerializationPrintTicketRequiredEventArgs(PrintTicketLevel.FixedPagePrintTicket, 0); manager.OnNGCSerializationPrintTicketRequired(e); Toolbox.Layout(fixedPage, manager.GetActivePrintTicket()); 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
- ReadOnlyHierarchicalDataSourceView.cs
- HashCodeCombiner.cs
- COM2Enum.cs
- SafeFindHandle.cs
- DataSourceHelper.cs
- AnalyzedTree.cs
- Light.cs
- WebBrowserEvent.cs
- LoginDesignerUtil.cs
- RectAnimationBase.cs
- GrammarBuilderPhrase.cs
- LineInfo.cs
- ProviderException.cs
- MatrixTransform.cs
- ConnectionManagementElementCollection.cs
- Model3DGroup.cs
- XmlQueryTypeFactory.cs
- SelectionManager.cs
- DropShadowEffect.cs
- SplitterEvent.cs
- DateTimeValueSerializer.cs
- SystemException.cs
- MULTI_QI.cs
- ConfigXmlSignificantWhitespace.cs
- MediaTimeline.cs
- TcpServerChannel.cs
- OperatingSystemVersionCheck.cs
- JobPageOrder.cs
- TypedMessageConverter.cs
- SearchForVirtualItemEventArgs.cs
- TabItemAutomationPeer.cs
- Operator.cs
- DbXmlEnabledProviderManifest.cs
- DataRowView.cs
- Knowncolors.cs
- SiteMapHierarchicalDataSourceView.cs
- XPathNodeIterator.cs
- HiddenFieldPageStatePersister.cs
- TemplateBuilder.cs
- SqlDataRecord.cs
- ObjectHelper.cs
- HitTestDrawingContextWalker.cs
- BinaryFormatterWriter.cs
- ResolveCriteria.cs
- JsonGlobals.cs
- SafeEventLogReadHandle.cs
- InkPresenter.cs
- ButtonChrome.cs
- AQNBuilder.cs
- BinaryFormatterWriter.cs
- Utility.cs
- Int32Converter.cs
- ConfigurationStrings.cs
- DeferredTextReference.cs
- DbFunctionCommandTree.cs
- ElementProxy.cs
- SoundPlayer.cs
- ToolStripSettings.cs
- ProxyOperationRuntime.cs
- String.cs
- DbInsertCommandTree.cs
- InProcStateClientManager.cs
- WindowsSysHeader.cs
- PointKeyFrameCollection.cs
- BrowserCapabilitiesCodeGenerator.cs
- LicenseContext.cs
- EntityDataSourceDesignerHelper.cs
- WebPartConnectionCollection.cs
- SqlBulkCopy.cs
- UnsafeNativeMethods.cs
- WindowsSlider.cs
- AspCompat.cs
- Stroke2.cs
- CodeParameterDeclarationExpression.cs
- Domain.cs
- FontDifferentiator.cs
- HashCodeCombiner.cs
- WebEventCodes.cs
- DefaultValidator.cs
- DataGridPageChangedEventArgs.cs
- sortedlist.cs
- ProcessHostFactoryHelper.cs
- Hashtable.cs
- ConnectionManagementElementCollection.cs
- StylusButton.cs
- ImageIndexConverter.cs
- SelectionChangedEventArgs.cs
- BaseParaClient.cs
- HandlerFactoryWrapper.cs
- ConnectionModeReader.cs
- VisualCollection.cs
- TextSpan.cs
- _ScatterGatherBuffers.cs
- DependencyObjectValidator.cs
- followingquery.cs
- UriPrefixTable.cs
- CachedCompositeFamily.cs
- DesignerMetadata.cs
- RectAnimation.cs
- coordinatorfactory.cs