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
- WebPartEditorCancelVerb.cs
- Divide.cs
- StringArrayConverter.cs
- SqlInternalConnection.cs
- ASCIIEncoding.cs
- CancellationHandler.cs
- Int64KeyFrameCollection.cs
- WebSysDefaultValueAttribute.cs
- Size3D.cs
- DataControlButton.cs
- XmlIterators.cs
- ConfigurationSettings.cs
- AnnotationComponentChooser.cs
- ToolStripItem.cs
- TemplateNodeContextMenu.cs
- RangeValidator.cs
- DataGridClipboardHelper.cs
- RequestNavigateEventArgs.cs
- TimersDescriptionAttribute.cs
- DescriptionAttribute.cs
- MaxSessionCountExceededException.cs
- ReferenceSchema.cs
- SocketPermission.cs
- Environment.cs
- DbMetaDataFactory.cs
- AppliedDeviceFiltersDialog.cs
- controlskin.cs
- PolicyLevel.cs
- ValidatingCollection.cs
- DetailsViewPagerRow.cs
- Documentation.cs
- RenderTargetBitmap.cs
- SlipBehavior.cs
- FixedSOMSemanticBox.cs
- SqlConnectionHelper.cs
- EpmAttributeNameBuilder.cs
- PagesSection.cs
- TextEditorTables.cs
- followingquery.cs
- CodeSpit.cs
- ControlBuilder.cs
- TreeNode.cs
- SecurityPermission.cs
- wgx_render.cs
- RecognizedAudio.cs
- XmlArrayItemAttributes.cs
- SplayTreeNode.cs
- ToolBarButtonDesigner.cs
- UniqueSet.cs
- GetWinFXPath.cs
- InputLanguageManager.cs
- SqlError.cs
- RegexCompilationInfo.cs
- ExpressionBuilderCollection.cs
- Cursors.cs
- TabletDevice.cs
- ContainerControlDesigner.cs
- Light.cs
- ImmComposition.cs
- BaseValidator.cs
- LambdaCompiler.cs
- BufferedReadStream.cs
- COM2PropertyBuilderUITypeEditor.cs
- ResolveResponseInfo.cs
- InkSerializer.cs
- EFTableProvider.cs
- PrivilegeNotHeldException.cs
- LoginUtil.cs
- DesignerTransaction.cs
- CopyAction.cs
- CornerRadius.cs
- ProfileGroupSettingsCollection.cs
- Soap12ProtocolImporter.cs
- TextSelectionProcessor.cs
- TypeCodeDomSerializer.cs
- UIElementIsland.cs
- ConfigurationLockCollection.cs
- ServiceMemoryGates.cs
- MemberCollection.cs
- TextRangeSerialization.cs
- EnumerableCollectionView.cs
- SchemaInfo.cs
- ReflectionUtil.cs
- ObjectManager.cs
- TrackBarRenderer.cs
- SymLanguageVendor.cs
- UIntPtr.cs
- GridViewRowPresenterBase.cs
- DataGridViewTextBoxEditingControl.cs
- TileBrush.cs
- DictationGrammar.cs
- WebPartZoneAutoFormat.cs
- WebPartPersonalization.cs
- ToolStripComboBox.cs
- PrimitiveCodeDomSerializer.cs
- IssuedSecurityTokenProvider.cs
- ListViewCancelEventArgs.cs
- Helper.cs
- HTTP_SERVICE_CONFIG_URLACL_PARAM.cs
- OwnerDrawPropertyBag.cs