Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Base / System / Windows / Markup / Primitives / MarkupObject.cs / 1305600 / MarkupObject.cs
//------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation, 2005 // // File: MarkupObject.cs // // Contents: API for iterating a tree of objects for serialization // // Created: 04/28/2005 [....] // //----------------------------------------------------------------------- using System; using System.ComponentModel; using System.Collections.Generic; using System.Reflection; using System.Text; using System.Windows.Markup; using MS.Internal.WindowsBase; namespace System.Windows.Markup.Primitives { ////// An enumeration class used by serialization to walk the a tree of objects. Markupobject's represent objects /// and using XML based serialization they would be written as elements. /// public abstract class MarkupObject { ////// Prevent external specialization /// [FriendAccessAllowed] // Used by ElementMarkupObject and others in Framework internal MarkupObject() { } ////// The CLR type for the object. For example, an item representing a Button would return the equivilient of /// typeof(System.Windows.Button). /// public abstract Type ObjectType { get; } ////// The instance of the object represented by the this MarkupObject. The type of the object might not be /// ObjectType if the instance represents a factory creating instances of type ObjectType. /// public abstract object Instance { get; } ////// An enumeration the items properties. Only properties that have significant (serializable) properties are /// returned. Properties that have their default value, or are otherwise not visible to serialization, are not /// returned. /// /// The first 0 to N properties returned by the Properties enumeration might have the IsConstructorArgument /// set. These properties should be used as the parameters to the ItemType's constructor with N parameters. If /// the first property doesn't have the IsConstructorArgument set, the default constructor of the ItemType /// should be used. /// /// If the MarkupItem is in a dictionary, one of the properties of the item will have an IsKey set to true. /// This is the value for the dictionary key. /// public virtual IEnumerableProperties { get { return GetProperties(true /*mapToConstructorArgs*/); } } internal abstract IEnumerable GetProperties(bool mapToConstructorArgs); /// /// Assigns a root context to use for ValueSerializer's that are used to return, for example, the string value /// of a property or key. All value serializaers will be looked up via this context if present. /// /// /// The context that will be passed to ValueSerializer's and TypeConverter's when converting text to a string /// public abstract void AssignRootContext(IValueSerializerContext context); ////// The attributes associated with the markup item. /// public abstract AttributeCollection Attributes { get; } } } // 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
- UnicodeEncoding.cs
- ErrorLog.cs
- COM2PropertyDescriptor.cs
- AttributeProviderAttribute.cs
- XmlSchemaObjectCollection.cs
- DescendantBaseQuery.cs
- SqlRowUpdatingEvent.cs
- ImportCatalogPart.cs
- MouseBinding.cs
- WrappedOptions.cs
- ResolveResponse.cs
- ISFClipboardData.cs
- RadialGradientBrush.cs
- AdRotator.cs
- CodePageUtils.cs
- SslStream.cs
- HtmlTextArea.cs
- ExtensibleClassFactory.cs
- ThemeInfoAttribute.cs
- AutoScrollHelper.cs
- SByteStorage.cs
- DNS.cs
- InheritedPropertyChangedEventArgs.cs
- DrawingAttributesDefaultValueFactory.cs
- ExtensionWindowResizeGrip.cs
- DesignerActionPanel.cs
- AnnotationResourceCollection.cs
- SystemDiagnosticsSection.cs
- TypeConverterHelper.cs
- Vector3DAnimation.cs
- ModelPerspective.cs
- ImpersonateTokenRef.cs
- TraversalRequest.cs
- HttpDictionary.cs
- DataGridViewRowsRemovedEventArgs.cs
- ConnectionManager.cs
- ISFTagAndGuidCache.cs
- ping.cs
- ConfigurationManagerHelper.cs
- SocketElement.cs
- Roles.cs
- DNS.cs
- WinFormsSecurity.cs
- SystemSounds.cs
- ScriptRegistrationManager.cs
- LineGeometry.cs
- DragStartedEventArgs.cs
- XmlEncodedRawTextWriter.cs
- FieldDescriptor.cs
- DataColumnChangeEvent.cs
- ObjectPersistData.cs
- BuildDependencySet.cs
- PackagePartCollection.cs
- BaseTemplateBuildProvider.cs
- ParsedRoute.cs
- MouseActionConverter.cs
- _ConnectStream.cs
- DriveNotFoundException.cs
- BrowserInteropHelper.cs
- GeometryDrawing.cs
- AddInSegmentDirectoryNotFoundException.cs
- WhitespaceRule.cs
- WebPartConnectionsConnectVerb.cs
- FastEncoderWindow.cs
- WindowShowOrOpenTracker.cs
- HttpBrowserCapabilitiesWrapper.cs
- TcpConnectionPoolSettingsElement.cs
- StyleXamlParser.cs
- ColorPalette.cs
- SweepDirectionValidation.cs
- ProfileServiceManager.cs
- SecurityTokenParameters.cs
- RowToParametersTransformer.cs
- DesignerEditorPartChrome.cs
- DictionaryContent.cs
- uribuilder.cs
- SqlTriggerAttribute.cs
- Calendar.cs
- HGlobalSafeHandle.cs
- HttpClientCertificate.cs
- ConnectionManagementElementCollection.cs
- ModuleBuilder.cs
- SelectionChangedEventArgs.cs
- TypeViewSchema.cs
- EmptyEnumerator.cs
- FixedHighlight.cs
- StylusCaptureWithinProperty.cs
- XmlSchemaValidationException.cs
- DbgUtil.cs
- HtmlTableCell.cs
- OdbcParameterCollection.cs
- PriorityItem.cs
- DesignerDataRelationship.cs
- ClientSponsor.cs
- PackageProperties.cs
- ChtmlTextWriter.cs
- ConfigurationLocationCollection.cs
- BrowsableAttribute.cs
- NumberEdit.cs
- JulianCalendar.cs