Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Markup / XamlSerializer.cs / 1305600 / XamlSerializer.cs
//---------------------------------------------------------------------------- // // File: XamlSerializer.cs // // Description: // XamlSerializer is used to persist an object instance to xaml markup // // Copyright (C) 2003 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.IO; using System.Reflection; using System.Xml; using System.Security.Permissions; using MS.Utility; #if PBTCOMPILER namespace MS.Internal.Markup #else namespace System.Windows.Markup #endif { ////// XamlSerializer is used to persist an /// object instance to xaml markup. /// internal class XamlSerializer { #region Construction ////// Constructor for XamlSerializer /// ////// This constructor will be used under /// the following three scenarios /// 1. Convert .. XamlToBaml /// 2. Convert .. XamlToObject /// 3. Convert .. BamlToObject /// public XamlSerializer() { } #endregion Construction #region OtherConversions ////// Convert from Xaml read by a token reader into baml being written /// out by a record writer. The context gives mapping information. /// #if !PBTCOMPILER //CASRemoval:[StrongNameIdentityPermission(SecurityAction.InheritanceDemand, PublicKey = Microsoft.Internal.BuildInfo.WCP_PUBLIC_KEY_STRING)] #endif internal virtual void ConvertXamlToBaml ( XamlReaderHelper tokenReader, ParserContext context, XamlNode xamlNode, BamlRecordWriter bamlWriter) { throw new InvalidOperationException(SR.Get(SRID.InvalidDeSerialize)); } #if !PBTCOMPILER ////// Convert from Xaml read by a token reader into a live /// object tree. The context gives mapping information. /// //CASRemoval:[StrongNameIdentityPermission(SecurityAction.InheritanceDemand, PublicKey = Microsoft.Internal.BuildInfo.WCP_PUBLIC_KEY_STRING)] internal virtual void ConvertXamlToObject ( XamlReaderHelper tokenReader, ReadWriteStreamManager streamManager, ParserContext context, XamlNode xamlNode, BamlRecordReader reader) { throw new InvalidOperationException(SR.Get(SRID.InvalidDeSerialize)); } ////// Convert from Baml read by a baml reader into an object tree. /// The context gives mapping information. Return the number of /// baml records processed. /// //CASRemoval:[StrongNameIdentityPermission(SecurityAction.InheritanceDemand, PublicKey = Microsoft.Internal.BuildInfo.WCP_PUBLIC_KEY_STRING)] internal virtual void ConvertBamlToObject ( BamlRecordReader reader, // Current reader that is processing records BamlRecord bamlRecord, // Record read in that triggered serializer ParserContext context) // Context { throw new InvalidOperationException(SR.Get(SRID.InvalidDeSerialize)); } #endif ////// Convert a string into a compact binary representation and write it out /// to the passed BinaryWriter. /// public virtual bool ConvertStringToCustomBinary ( BinaryWriter writer, // Writer into the baml stream string stringValue) // String to convert { throw new InvalidOperationException(SR.Get(SRID.InvalidCustomSerialize)); } ////// Convert a compact binary representation of a certain object into and instance /// of that object. The reader must be left pointing immediately after the object /// data in the underlying stream. /// public virtual object ConvertCustomBinaryToObject( BinaryReader reader) { throw new InvalidOperationException(SR.Get(SRID.InvalidCustomSerialize)); } ////// If the object created by this serializer is stored in a dictionary, this /// method will extract the key used for this dictionary from the passed /// collection of baml records. How the key is determined is up to the /// individual serializer. By default, there is no key retrieved. /// #if !PBTCOMPILER //CASRemoval:[StrongNameIdentityPermission(SecurityAction.InheritanceDemand, PublicKey = Microsoft.Internal.BuildInfo.WCP_PUBLIC_KEY_STRING)] #endif internal virtual object GetDictionaryKey( BamlRecord bamlRecord, ParserContext parserContext) { return null; } #endregion OtherConversions #region Data internal const string DefNamespacePrefix = "x"; // Used to emit Definitions namespace prefix internal const string DefNamespace = "http://schemas.microsoft.com/winfx/2006/xaml"; // Used to emit Definitions namespace internal const string ArrayTag = "Array"; // Used to emit the x:Array tag internal const string ArrayTagTypeAttribute = "Type"; // Used to emit the x:Type attribute for Array #endregion Data } } // 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
- storepermission.cs
- CqlParserHelpers.cs
- ExceptionHelpers.cs
- DesignerAttribute.cs
- SiteIdentityPermission.cs
- Frame.cs
- Misc.cs
- httpserverutility.cs
- SamlEvidence.cs
- HttpApplicationFactory.cs
- codemethodreferenceexpression.cs
- CustomWebEventKey.cs
- UnmanagedMemoryStreamWrapper.cs
- XmlSchemaComplexContent.cs
- MetadataUtil.cs
- EntitySetDataBindingList.cs
- FixedSOMLineRanges.cs
- FontFamilyIdentifier.cs
- ObjRef.cs
- ThicknessAnimation.cs
- InstanceKeyCollisionException.cs
- ScriptControlDescriptor.cs
- PreviewKeyDownEventArgs.cs
- HostProtectionPermission.cs
- PointCollectionValueSerializer.cs
- AsymmetricKeyExchangeDeformatter.cs
- ImageCreator.cs
- WaveHeader.cs
- SettingsPropertyNotFoundException.cs
- OleDbDataAdapter.cs
- DocumentPageViewAutomationPeer.cs
- LineVisual.cs
- HeaderUtility.cs
- XamlGridLengthSerializer.cs
- SessionSwitchEventArgs.cs
- DeferredTextReference.cs
- DoubleAnimationClockResource.cs
- CheckBoxFlatAdapter.cs
- ColorConvertedBitmapExtension.cs
- HttpCapabilitiesEvaluator.cs
- LinkClickEvent.cs
- DecoderExceptionFallback.cs
- UserControlCodeDomTreeGenerator.cs
- SessionPageStateSection.cs
- XmlSchemaException.cs
- TargetInvocationException.cs
- CommentEmitter.cs
- SchemaTableColumn.cs
- CurrencyManager.cs
- DataRelationCollection.cs
- StringArrayConverter.cs
- SHA512Managed.cs
- MessageAction.cs
- ImageAnimator.cs
- DataGridRowHeaderAutomationPeer.cs
- HwndSourceKeyboardInputSite.cs
- PhysicalAddress.cs
- MessagePropertyVariants.cs
- PostBackOptions.cs
- SignedXml.cs
- JumpPath.cs
- CodeRemoveEventStatement.cs
- DefaultPerformanceCounters.cs
- DBAsyncResult.cs
- XmlHierarchicalEnumerable.cs
- ObjectQueryExecutionPlan.cs
- FormatConvertedBitmap.cs
- LogExtentCollection.cs
- SkewTransform.cs
- CorrelationKeyCalculator.cs
- RevocationPoint.cs
- ComponentResourceKeyConverter.cs
- ObjectStateEntry.cs
- MessageTraceRecord.cs
- TaskScheduler.cs
- HierarchicalDataBoundControl.cs
- SafeNativeMethodsOther.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- ListViewSelectEventArgs.cs
- DrawingState.cs
- CodeExporter.cs
- AutoGeneratedFieldProperties.cs
- Storyboard.cs
- WbemException.cs
- DesignerMetadata.cs
- ValidationError.cs
- KeyBinding.cs
- RoutedEventConverter.cs
- NamespaceCollection.cs
- MergePropertyDescriptor.cs
- ExpressionParser.cs
- BinaryWriter.cs
- MSAANativeProvider.cs
- SynchronizedDispatch.cs
- VisualBrush.cs
- Operator.cs
- SequenceFullException.cs
- ToolBar.cs
- Relationship.cs
- CompoundFileStreamReference.cs