Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Base / MS / Internal / ComponentModel / DependencyPropertyAttribute.cs / 1 / DependencyPropertyAttribute.cs
namespace MS.Internal.ComponentModel { using System; using System.Windows; ////// This attribute is synthesized by our DependencyObjectProvider /// to relate a property descriptor back to a dependency property. /// [AttributeUsage(AttributeTargets.Method)] internal sealed class DependencyPropertyAttribute : Attribute { //------------------------------------------------------ // // Constructors // //----------------------------------------------------- #region Constructors ////// Creates a new DependencyPropertyAttribute for the given dependency property. /// internal DependencyPropertyAttribute(DependencyProperty dependencyProperty, bool isAttached) { if (dependencyProperty == null) throw new ArgumentNullException("dependencyProperty"); _dp = dependencyProperty; _isAttached = isAttached; } #endregion Constructors //----------------------------------------------------- // // Public Methods // //----------------------------------------------------- #region Public Methods ////// Override of Object.Equals that returns true when the dependency /// property contained within each attribute is the same. /// public override bool Equals(object value) { DependencyPropertyAttribute da = value as DependencyPropertyAttribute; if (da != null && object.ReferenceEquals(da._dp, _dp) && da._isAttached == _isAttached) { return true; } return false; } ////// Override of Object.GetHashCode(); /// public override int GetHashCode() { return _dp.GetHashCode(); } #endregion Public Methods //------------------------------------------------------ // // Public Operators // //----------------------------------------------------- //------------------------------------------------------ // // Public Properties // //------------------------------------------------------ #region Public Properties ////// Overrides Attribute.TypeId to be unique with respect to /// other dependency property attributes.c /// public override object TypeId { get { return typeof(DependencyPropertyAttribute); } } #endregion Public Properties //----------------------------------------------------- // // Public Events // //------------------------------------------------------ //----------------------------------------------------- // // Internal Properties // //----------------------------------------------------- #region Internal Properties ////// Returns whether the dependency property is an attached /// property. /// internal bool IsAttached { get { return _isAttached; } } ////// Returns the dependency property instance this attribute is /// associated with. /// internal DependencyProperty DependencyProperty { get { return _dp; } } #endregion Internal Properties //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields private DependencyProperty _dp; private bool _isAttached; #endregion Private Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace MS.Internal.ComponentModel { using System; using System.Windows; ////// This attribute is synthesized by our DependencyObjectProvider /// to relate a property descriptor back to a dependency property. /// [AttributeUsage(AttributeTargets.Method)] internal sealed class DependencyPropertyAttribute : Attribute { //------------------------------------------------------ // // Constructors // //----------------------------------------------------- #region Constructors ////// Creates a new DependencyPropertyAttribute for the given dependency property. /// internal DependencyPropertyAttribute(DependencyProperty dependencyProperty, bool isAttached) { if (dependencyProperty == null) throw new ArgumentNullException("dependencyProperty"); _dp = dependencyProperty; _isAttached = isAttached; } #endregion Constructors //----------------------------------------------------- // // Public Methods // //----------------------------------------------------- #region Public Methods ////// Override of Object.Equals that returns true when the dependency /// property contained within each attribute is the same. /// public override bool Equals(object value) { DependencyPropertyAttribute da = value as DependencyPropertyAttribute; if (da != null && object.ReferenceEquals(da._dp, _dp) && da._isAttached == _isAttached) { return true; } return false; } ////// Override of Object.GetHashCode(); /// public override int GetHashCode() { return _dp.GetHashCode(); } #endregion Public Methods //------------------------------------------------------ // // Public Operators // //----------------------------------------------------- //------------------------------------------------------ // // Public Properties // //------------------------------------------------------ #region Public Properties ////// Overrides Attribute.TypeId to be unique with respect to /// other dependency property attributes.c /// public override object TypeId { get { return typeof(DependencyPropertyAttribute); } } #endregion Public Properties //----------------------------------------------------- // // Public Events // //------------------------------------------------------ //----------------------------------------------------- // // Internal Properties // //----------------------------------------------------- #region Internal Properties ////// Returns whether the dependency property is an attached /// property. /// internal bool IsAttached { get { return _isAttached; } } ////// Returns the dependency property instance this attribute is /// associated with. /// internal DependencyProperty DependencyProperty { get { return _dp; } } #endregion Internal Properties //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields private DependencyProperty _dp; private bool _isAttached; #endregion Private Fields } } // 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
- EventData.cs
- ErrorRuntimeConfig.cs
- HtmlTitle.cs
- TextSelectionHighlightLayer.cs
- SerializerProvider.cs
- SqlProvider.cs
- ContentFileHelper.cs
- ellipse.cs
- Win32Native.cs
- StringInfo.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- Utils.cs
- SqlConnectionHelper.cs
- CodeActivity.cs
- ReadOnlyHierarchicalDataSource.cs
- DataBinder.cs
- ConfigXmlComment.cs
- TreeNodeConverter.cs
- ValueType.cs
- XmlParserContext.cs
- LogicalTreeHelper.cs
- StreamInfo.cs
- GridViewDeletedEventArgs.cs
- ComNativeDescriptor.cs
- ISFClipboardData.cs
- SqlInternalConnection.cs
- StreamUpgradeProvider.cs
- BamlRecordWriter.cs
- BaseCodeDomTreeGenerator.cs
- DNS.cs
- GridViewRow.cs
- ProcessModelInfo.cs
- SiteMapDataSource.cs
- DataGridViewTextBoxColumn.cs
- isolationinterop.cs
- SharedUtils.cs
- ProfileService.cs
- XmlSchemaInfo.cs
- TypeDescriptionProvider.cs
- DependencyPropertyHelper.cs
- CustomTypeDescriptor.cs
- BigInt.cs
- ScriptReferenceEventArgs.cs
- DataGridLength.cs
- XmlSchemaSubstitutionGroup.cs
- ConfigurationElementCollection.cs
- WriterOutput.cs
- log.cs
- DataObjectSettingDataEventArgs.cs
- VisualTarget.cs
- IntranetCredentialPolicy.cs
- CharacterShapingProperties.cs
- PageEventArgs.cs
- ToolStripTemplateNode.cs
- NamedPipeActivation.cs
- Button.cs
- CustomPopupPlacement.cs
- input.cs
- XmlUTF8TextReader.cs
- UriParserTemplates.cs
- SSmlParser.cs
- AppDomainResourcePerfCounters.cs
- SystemColors.cs
- PublishLicense.cs
- OutOfMemoryException.cs
- DynamicExpression.cs
- X509ChainPolicy.cs
- TextEffect.cs
- HtmlTitle.cs
- SourceFilter.cs
- KnownBoxes.cs
- MultipartContentParser.cs
- EntitySqlQueryCacheKey.cs
- MessageParameterAttribute.cs
- UIElement.cs
- BinHexEncoder.cs
- QueryableFilterRepeater.cs
- ClientSettingsSection.cs
- loginstatus.cs
- SkewTransform.cs
- TrackBarRenderer.cs
- DesignerDataSchemaClass.cs
- SpnegoTokenAuthenticator.cs
- BaseProcessor.cs
- SystemInfo.cs
- InlineUIContainer.cs
- PublishLicense.cs
- ClusterUtils.cs
- SoapFault.cs
- DefaultValueConverter.cs
- DataGridColumnCollection.cs
- SafeHandles.cs
- AmbiguousMatchException.cs
- HandlerMappingMemo.cs
- PageCatalogPart.cs
- DragEvent.cs
- MDIClient.cs
- ListItemCollection.cs
- CodeParameterDeclarationExpression.cs
- MatrixTransform3D.cs