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
- CheckBoxFlatAdapter.cs
- Lookup.cs
- CompiledAction.cs
- UncommonField.cs
- XmlTypeAttribute.cs
- RuntimeCompatibilityAttribute.cs
- IIS7ConfigurationLoader.cs
- OutputScope.cs
- SystemColors.cs
- KeyGestureConverter.cs
- ThousandthOfEmRealDoubles.cs
- GeneralTransform3DGroup.cs
- SourceChangedEventArgs.cs
- EUCJPEncoding.cs
- NoneExcludedImageIndexConverter.cs
- CustomAttributeSerializer.cs
- SqlInfoMessageEvent.cs
- KerberosSecurityTokenAuthenticator.cs
- MachineSettingsSection.cs
- ParentQuery.cs
- SmiSettersStream.cs
- HttpDebugHandler.cs
- WebConfigurationHostFileChange.cs
- COM2PictureConverter.cs
- TcpTransportSecurityElement.cs
- Solver.cs
- EnumUnknown.cs
- Base64Encoder.cs
- TimeSpanParse.cs
- XmlAttributeOverrides.cs
- HotSpotCollection.cs
- ChangeProcessor.cs
- TagMapInfo.cs
- HwndProxyElementProvider.cs
- LocationSectionRecord.cs
- TraceUtility.cs
- SystemDiagnosticsSection.cs
- HyperLinkColumn.cs
- TcpAppDomainProtocolHandler.cs
- Timer.cs
- PasswordTextNavigator.cs
- HierarchicalDataSourceControl.cs
- RenderOptions.cs
- MethodToken.cs
- DetailsViewPagerRow.cs
- SafeRightsManagementHandle.cs
- PerformanceCounterPermission.cs
- nulltextnavigator.cs
- FormatterServices.cs
- EpmSyndicationContentSerializer.cs
- isolationinterop.cs
- DoubleAnimationClockResource.cs
- WindowsTokenRoleProvider.cs
- DeviceContext.cs
- ReferentialConstraint.cs
- DataConnectionHelper.cs
- ContentWrapperAttribute.cs
- FragmentNavigationEventArgs.cs
- EntityClientCacheEntry.cs
- ArithmeticException.cs
- SystemFonts.cs
- ControlBindingsCollection.cs
- CngProperty.cs
- Hex.cs
- ControlPropertyNameConverter.cs
- FormatterConverter.cs
- SelectionHighlightInfo.cs
- ControlEvent.cs
- EntityCommandCompilationException.cs
- ListDictionaryInternal.cs
- Enlistment.cs
- ContentFileHelper.cs
- DataBoundControlHelper.cs
- FullTextBreakpoint.cs
- Padding.cs
- ContentDisposition.cs
- CompilationSection.cs
- CanExecuteRoutedEventArgs.cs
- TabPage.cs
- GenericEnumerator.cs
- ViewUtilities.cs
- FullTextLine.cs
- LocalFileSettingsProvider.cs
- StringStorage.cs
- AutomationAttributeInfo.cs
- RotateTransform3D.cs
- _ListenerAsyncResult.cs
- RulePatternOps.cs
- XsdCachingReader.cs
- XmlArrayAttribute.cs
- MyContact.cs
- MainMenu.cs
- HtmlInputControl.cs
- AffineTransform3D.cs
- Wizard.cs
- CalendarDateRange.cs
- UrlPath.cs
- TimelineGroup.cs
- SessionEndingEventArgs.cs
- RuleElement.cs