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
- PackageRelationshipSelector.cs
- FileChangeNotifier.cs
- GridViewUpdateEventArgs.cs
- Geometry3D.cs
- Queue.cs
- TextDecorationCollection.cs
- ColorIndependentAnimationStorage.cs
- CachingHintValidation.cs
- IHttpResponseInternal.cs
- XmlCustomFormatter.cs
- UserControlFileEditor.cs
- SqlCommandBuilder.cs
- UniqueIdentifierService.cs
- QilLiteral.cs
- ToolStripLabel.cs
- CqlIdentifiers.cs
- InstanceStore.cs
- XmlAnyElementAttribute.cs
- InfoCardRSAPKCS1SignatureFormatter.cs
- OrthographicCamera.cs
- sqlser.cs
- EventLogPermissionAttribute.cs
- ProtocolsConfigurationEntry.cs
- StateChangeEvent.cs
- GlyphsSerializer.cs
- WebPartExportVerb.cs
- StringBuilder.cs
- httpserverutility.cs
- TextBoxAutoCompleteSourceConverter.cs
- ErrorFormatterPage.cs
- SmiGettersStream.cs
- ColorDialog.cs
- ProxyFragment.cs
- KnownBoxes.cs
- ModelFunction.cs
- CompModSwitches.cs
- PathGradientBrush.cs
- TextEffect.cs
- NativeMethods.cs
- SecurityChannelListener.cs
- KeyValuePairs.cs
- CookieHandler.cs
- WebPartVerbsEventArgs.cs
- BufferAllocator.cs
- IDictionary.cs
- MsmqIntegrationBindingElement.cs
- ZoneButton.cs
- HttpCapabilitiesSectionHandler.cs
- LambdaExpression.cs
- SHA256Managed.cs
- Cursors.cs
- HttpValueCollection.cs
- SymLanguageVendor.cs
- ElapsedEventArgs.cs
- SafeCryptContextHandle.cs
- SizeAnimation.cs
- PartialCachingAttribute.cs
- DataSourceXmlSerializer.cs
- EncryptedKeyIdentifierClause.cs
- JapaneseCalendar.cs
- DataGridViewHeaderCell.cs
- PackageProperties.cs
- TabItem.cs
- InputBindingCollection.cs
- GeneralTransform2DTo3DTo2D.cs
- RSAPKCS1KeyExchangeFormatter.cs
- EditorBrowsableAttribute.cs
- SynchronizationFilter.cs
- HttpRequestTraceRecord.cs
- ImageMap.cs
- coordinatorfactory.cs
- ApplicationInterop.cs
- XmlStrings.cs
- OutputCacheModule.cs
- XmlSchemaSimpleTypeList.cs
- _ConnectStream.cs
- BamlTreeNode.cs
- KerberosSecurityTokenProvider.cs
- MetabaseSettingsIis7.cs
- ControlAdapter.cs
- Floater.cs
- webeventbuffer.cs
- PhonemeConverter.cs
- GenericAuthenticationEventArgs.cs
- XamlTreeBuilder.cs
- ConnectionPoint.cs
- HtmlGenericControl.cs
- ZipIOFileItemStream.cs
- CodeCommentStatement.cs
- AttributeUsageAttribute.cs
- EditorAttribute.cs
- HtmlInputRadioButton.cs
- SingleAnimationBase.cs
- DataView.cs
- ServiceHostFactory.cs
- GetWinFXPath.cs
- UDPClient.cs
- ApplicationDirectory.cs
- HtmlAnchor.cs
- PageAdapter.cs