Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Base / MS / Internal / ComponentModel / DependencyPropertyAttribute.cs / 1305600 / 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
- IntegerFacetDescriptionElement.cs
- MasterPageCodeDomTreeGenerator.cs
- UiaCoreApi.cs
- CodeNamespace.cs
- AttributeCollection.cs
- LineGeometry.cs
- DataBoundControl.cs
- DependencyProperty.cs
- HtmlDocument.cs
- XmlHelper.cs
- SqlParameterCollection.cs
- HTTPRemotingHandler.cs
- Validator.cs
- ScheduleChanges.cs
- ContractListAdapter.cs
- TableLayoutPanelCellPosition.cs
- XmlSchemaSimpleTypeRestriction.cs
- ControlBuilder.cs
- ComAdminInterfaces.cs
- Currency.cs
- LicenseContext.cs
- PreviewPageInfo.cs
- Activator.cs
- TextViewBase.cs
- FloatMinMaxAggregationOperator.cs
- DataViewListener.cs
- ClientEventManager.cs
- QualifierSet.cs
- ExtensionSurface.cs
- WebPartDisplayModeEventArgs.cs
- TimeStampChecker.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- RootBrowserWindowProxy.cs
- SqlDependency.cs
- WebPart.cs
- WeakReferenceKey.cs
- LinqDataSourceInsertEventArgs.cs
- SchemaObjectWriter.cs
- SqlProcedureAttribute.cs
- Simplifier.cs
- RightsManagementPermission.cs
- PropertyChange.cs
- DataGridViewLayoutData.cs
- ArgumentException.cs
- Identifier.cs
- DesignerDataStoredProcedure.cs
- altserialization.cs
- Int16AnimationUsingKeyFrames.cs
- ArithmeticLiteral.cs
- SaveFileDialog.cs
- ConfigXmlComment.cs
- MergablePropertyAttribute.cs
- activationcontext.cs
- streamingZipPartStream.cs
- ControlParser.cs
- Schema.cs
- Pkcs9Attribute.cs
- XmlILStorageConverter.cs
- XmlUtf8RawTextWriter.cs
- DataServiceKeyAttribute.cs
- XmlName.cs
- MembershipUser.cs
- PictureBox.cs
- ProcessModule.cs
- VectorAnimation.cs
- StaticTextPointer.cs
- SystemBrushes.cs
- LineVisual.cs
- SqlTrackingService.cs
- BitmapEffectInputData.cs
- ConditionValidator.cs
- Parameter.cs
- ButtonPopupAdapter.cs
- AutoResizedEvent.cs
- PlainXmlWriter.cs
- DocumentViewerAutomationPeer.cs
- CubicEase.cs
- Baml2006Reader.cs
- PriorityBindingExpression.cs
- SiteMembershipCondition.cs
- UIHelper.cs
- ListMarkerSourceInfo.cs
- PenThread.cs
- VirtualizingStackPanel.cs
- RemotingSurrogateSelector.cs
- DocumentReferenceCollection.cs
- Permission.cs
- DataRecordInternal.cs
- ContentTextAutomationPeer.cs
- HierarchicalDataTemplate.cs
- HistoryEventArgs.cs
- Metadata.cs
- EnumUnknown.cs
- BuildDependencySet.cs
- DataFormats.cs
- CheckBox.cs
- QuadraticBezierSegment.cs
- MetadataHelper.cs
- BookmarkScope.cs
- SpeakInfo.cs