Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Base / System / Windows / AttachedPropertyBrowsableWhenAttributePresentAttribute.cs / 1 / AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
namespace System.Windows { using System; using System.ComponentModel; ////// This attribute declares that an attached property can only be attached /// to an object that defines the given attribute on its class. /// [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] public sealed class AttachedPropertyBrowsableWhenAttributePresentAttribute : AttachedPropertyBrowsableAttribute { //------------------------------------------------------ // // Constructors // //----------------------------------------------------- ////// Creates a new AttachedPropertyBrowsableWhenAttributePresentAttribute. Provide /// the type of attribute that, when present on a dependency object, /// should make the property browsable. /// public AttachedPropertyBrowsableWhenAttributePresentAttribute(Type attributeType) { if (attributeType == null) throw new ArgumentNullException("attributeType"); _attributeType = attributeType; } //----------------------------------------------------- // // Public Properties // //----------------------------------------------------- ////// Returns the attribute type passed into the constructor. /// public Type AttributeType { get { return _attributeType; } } //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- ////// Overrides Object.Equals to implement correct equality semantics for this /// attribute. /// public override bool Equals(object obj) { AttachedPropertyBrowsableWhenAttributePresentAttribute other = obj as AttachedPropertyBrowsableWhenAttributePresentAttribute; if (other == null) return false; return _attributeType == other._attributeType; } ////// Overrides Object.GetHashCode to implement correct hashing semantics. /// public override int GetHashCode() { return _attributeType.GetHashCode(); } //------------------------------------------------------ // // Internal Methods // //------------------------------------------------------ ////// Returns true if the dependency object class defines an attribute /// of the same type contained in this attribute. The attribute must /// differ from the "default" state of the attribute. /// internal override bool IsBrowsable(DependencyObject d, DependencyProperty dp) { if (d == null) throw new ArgumentNullException("d"); if (dp == null) throw new ArgumentNullException("dp"); Attribute a = TypeDescriptor.GetAttributes(d)[_attributeType]; return (a != null && !a.IsDefaultAttribute()); } //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ private Type _attributeType; } } // 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
- RequestQueue.cs
- XmlChildEnumerator.cs
- FederatedMessageSecurityOverHttp.cs
- SQLBinary.cs
- ReferenceEqualityComparer.cs
- BinaryParser.cs
- Control.cs
- PartitionedStream.cs
- WhitespaceRuleLookup.cs
- XsltLibrary.cs
- ArrayElementGridEntry.cs
- CheckPair.cs
- PauseStoryboard.cs
- RoleServiceManager.cs
- XmlWriter.cs
- IgnoreDeviceFilterElement.cs
- ContextMenuService.cs
- Choices.cs
- PermissionSetEnumerator.cs
- TypeDescriptionProvider.cs
- RSAPKCS1SignatureDeformatter.cs
- DesignerCatalogPartChrome.cs
- ProxyFragment.cs
- ADMembershipProvider.cs
- ClockController.cs
- AdapterUtil.cs
- FileUpload.cs
- MultiSelector.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- InheritanceContextHelper.cs
- FacetDescriptionElement.cs
- AliasGenerator.cs
- TableCellCollection.cs
- SyntaxCheck.cs
- RuntimeCompatibilityAttribute.cs
- DPCustomTypeDescriptor.cs
- Html32TextWriter.cs
- DataBindEngine.cs
- NativeMethods.cs
- ListenerPerfCounters.cs
- RecognizedAudio.cs
- BaseHashHelper.cs
- CopyCodeAction.cs
- UriPrefixTable.cs
- DataGridTemplateColumn.cs
- PLINQETWProvider.cs
- TextCollapsingProperties.cs
- ActivityExecutorOperation.cs
- IntSecurity.cs
- SafeArrayRankMismatchException.cs
- ProfileSection.cs
- DesigntimeLicenseContextSerializer.cs
- PropertyMetadata.cs
- SqlDataSourceStatusEventArgs.cs
- ValueQuery.cs
- VirtualDirectoryMappingCollection.cs
- SiteMapPath.cs
- ExpressionPrinter.cs
- BuilderInfo.cs
- FileDialog_Vista_Interop.cs
- Bold.cs
- BaseInfoTable.cs
- UniqueIdentifierService.cs
- SQLBytes.cs
- HtmlCommandAdapter.cs
- TreeNodeCollection.cs
- SimpleMailWebEventProvider.cs
- StatusBar.cs
- XmlSubtreeReader.cs
- SmtpCommands.cs
- DbConnectionPoolOptions.cs
- KnownColorTable.cs
- TypefaceMap.cs
- TextSpan.cs
- HttpStreamMessageEncoderFactory.cs
- BamlTreeMap.cs
- MergePropertyDescriptor.cs
- TextParaClient.cs
- DesignSurface.cs
- DbExpressionRules.cs
- BitmapInitialize.cs
- DetailsViewUpdatedEventArgs.cs
- AxDesigner.cs
- SelectionPattern.cs
- NameSpaceExtractor.cs
- ToolStripHighContrastRenderer.cs
- WebPartConnectVerb.cs
- RtfFormatStack.cs
- UserControlAutomationPeer.cs
- NotCondition.cs
- TableItemProviderWrapper.cs
- WindowsAuthenticationEventArgs.cs
- XmlUtf8RawTextWriter.cs
- FilterQuery.cs
- EditorPartCollection.cs
- SessionPageStatePersister.cs
- DriveNotFoundException.cs
- DateTimeValueSerializer.cs
- TextSpan.cs
- FontUnitConverter.cs