Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- XmlEntityReference.cs
- UrlPath.cs
- PathSegmentCollection.cs
- KeyInfo.cs
- ContainerParaClient.cs
- ImmutableObjectAttribute.cs
- ToolStripProgressBar.cs
- ThemeDirectoryCompiler.cs
- StylusDownEventArgs.cs
- MenuBase.cs
- FakeModelPropertyImpl.cs
- MissingManifestResourceException.cs
- LexicalChunk.cs
- IProducerConsumerCollection.cs
- PeerEndPoint.cs
- BufferModeSettings.cs
- StrongNameMembershipCondition.cs
- DataGridViewCellMouseEventArgs.cs
- ExpandableObjectConverter.cs
- CompatibleComparer.cs
- InplaceBitmapMetadataWriter.cs
- QueryPageSettingsEventArgs.cs
- isolationinterop.cs
- CheckableControlBaseAdapter.cs
- ApplicationManager.cs
- ToolStripArrowRenderEventArgs.cs
- SHA512.cs
- PrintDocument.cs
- DataShape.cs
- WebPartDeleteVerb.cs
- ObjectCloneHelper.cs
- QueryExtender.cs
- ToolStripRenderer.cs
- UriExt.cs
- RegistryPermission.cs
- TabItemAutomationPeer.cs
- RouteParser.cs
- FixedDocument.cs
- RubberbandSelector.cs
- XmlAttribute.cs
- UniqueEventHelper.cs
- FrameSecurityDescriptor.cs
- Errors.cs
- DataControlFieldHeaderCell.cs
- DbSetClause.cs
- WorkflowOwnerAsyncResult.cs
- CollectionDataContractAttribute.cs
- tibetanshape.cs
- Thread.cs
- typedescriptorpermissionattribute.cs
- DeferredRunTextReference.cs
- NativeMethods.cs
- PenLineCapValidation.cs
- DisplayToken.cs
- SqlDataReaderSmi.cs
- NullEntityWrapper.cs
- GPPOINTF.cs
- SqlDataSourceSummaryPanel.cs
- BinaryMethodMessage.cs
- EncoderReplacementFallback.cs
- ScrollViewerAutomationPeer.cs
- SpnegoTokenProvider.cs
- SizeLimitedCache.cs
- VectorAnimationUsingKeyFrames.cs
- Stopwatch.cs
- FreezableDefaultValueFactory.cs
- ActionItem.cs
- PropertyPath.cs
- TextParagraphCache.cs
- TableChangeProcessor.cs
- SystemIPv6InterfaceProperties.cs
- Size.cs
- MimePart.cs
- PersistenceTypeAttribute.cs
- FileCodeGroup.cs
- ColumnWidthChangingEvent.cs
- PolyQuadraticBezierSegment.cs
- ObjectStateEntry.cs
- Variant.cs
- UrlEncodedParameterWriter.cs
- BamlCollectionHolder.cs
- HttpListenerTimeoutManager.cs
- RadialGradientBrush.cs
- ReflectEventDescriptor.cs
- ButtonChrome.cs
- StdValidatorsAndConverters.cs
- PriorityQueue.cs
- DataGridViewCellPaintingEventArgs.cs
- UrlPath.cs
- ListControlDesigner.cs
- SerialErrors.cs
- UserControlAutomationPeer.cs
- EncryptedType.cs
- ToolboxComponentsCreatedEventArgs.cs
- InvalidPrinterException.cs
- StateWorkerRequest.cs
- ExtenderControl.cs
- DataSourceControlBuilder.cs
- Keywords.cs
- RtfNavigator.cs