Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / CompMod / System / ComponentModel / Design / HelpKeywordAttribute.cs / 1 / HelpKeywordAttribute.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.ComponentModel.Design { using System; using System.Security.Permissions; ////// Allows specification of the context keyword that will be specified for this class or member. By default, /// the help keyword for a class is the Type's full name, and for a member it's the full name of the type that declared the property, /// plus the property name itself. /// /// For example, consider System.Windows.Forms.Button and it's Text property: /// /// The class keyword is "System.Windows.Forms.Button", but the Text property keyword is "System.Windows.Forms.Control.Text", because the Text /// property is declared on the System.Windows.Forms.Control class rather than the Button class itself; the Button class inherits the property. /// By contrast, the DialogResult property is declared on the Button so its keyword would be "System.Windows.Forms.Button.DialogResult". /// /// When the help system gets the keywords, it will first look at this attribute. At the class level, it will return the string specified by the /// HelpContextAttribute. Note this will not be used for members of the Type in question. They will still reflect the declaring Type's actual /// full name, plus the member name. To override this, place the attribute on the member itself. /// /// Example: /// /// [HelpKeywordAttribute(typeof(Component))] /// public class MyComponent : Component { /// /// /// public string Property1 { get{return "";}; /// /// [HelpKeywordAttribute("SomeNamespace.SomeOtherClass.Property2")] /// public string Property2 { get{return "";}; /// /// } /// /// /// For the above class (default without attribution): /// /// Class keyword: "System.ComponentModel.Component" ("MyNamespace.MyComponent') /// Property1 keyword: "MyNamespace.MyComponent.Property1" (default) /// Property2 keyword: "SomeNamespace.SomeOtherClass.Property2" ("MyNamespace.MyComponent.Property2") /// /// [AttributeUsage(AttributeTargets.All, AllowMultiple = false, Inherited = false)] [Serializable] public sealed class HelpKeywordAttribute : Attribute { ////// Default value for HelpKeywordAttribute, which is null. /// public static readonly HelpKeywordAttribute Default = new HelpKeywordAttribute(); private string contextKeyword; ////// Default constructor, which creates an attribute with a null HelpKeyword. /// public HelpKeywordAttribute() { } ////// Creates a HelpKeywordAttribute with the value being the given keyword string. /// public HelpKeywordAttribute(string keyword) { if (keyword == null) { throw new ArgumentNullException("keyword"); } this.contextKeyword = keyword; } ////// Creates a HelpKeywordAttribute with the value being the full name of the given type. /// public HelpKeywordAttribute(Type t) { if (t == null) { throw new ArgumentNullException("t"); } this.contextKeyword = t.FullName; } ////// Retrieves the HelpKeyword this attribute supplies. /// public string HelpKeyword { get { return contextKeyword; } } ////// Two instances of a HelpKeywordAttribute are equal if they're HelpKeywords are equal. /// public override bool Equals(object obj) { if (obj == this) { return true; } if ((obj != null) && (obj is HelpKeywordAttribute)) { return ((HelpKeywordAttribute)obj).HelpKeyword == HelpKeyword; } return false; } ////// public override int GetHashCode() { return base.GetHashCode(); } ////// Returns true if this Attribute's HelpKeyword is null. /// public override bool IsDefaultAttribute() { return this.Equals(Default); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MemberHolder.cs
- Underline.cs
- Descriptor.cs
- ConstraintStruct.cs
- ComEventsHelper.cs
- AnimatedTypeHelpers.cs
- JournalEntry.cs
- ScriptingSectionGroup.cs
- RsaSecurityToken.cs
- CapabilitiesPattern.cs
- GridProviderWrapper.cs
- Icon.cs
- Accessible.cs
- ByteStorage.cs
- CompiledScopeCriteria.cs
- TextDecorationLocationValidation.cs
- PersonalizationProviderHelper.cs
- LocalizabilityAttribute.cs
- AppDomainManager.cs
- ToolStripPanelRow.cs
- ProxyHwnd.cs
- WsdlInspector.cs
- CheckBoxRenderer.cs
- CookielessHelper.cs
- StringUtil.cs
- SystemIPGlobalProperties.cs
- QueryCacheManager.cs
- SymmetricAlgorithm.cs
- AutomationPatternInfo.cs
- ResourceSet.cs
- DatatypeImplementation.cs
- TreeNodeSelectionProcessor.cs
- ComponentResourceManager.cs
- TraceContext.cs
- QueryCursorEventArgs.cs
- BooleanFacetDescriptionElement.cs
- URLIdentityPermission.cs
- CodeBlockBuilder.cs
- FrameworkRichTextComposition.cs
- StorageEntitySetMapping.cs
- EditorZoneAutoFormat.cs
- RemoveStoryboard.cs
- HexParser.cs
- SemaphoreSecurity.cs
- SchemaName.cs
- DataRelationCollection.cs
- SymmetricAlgorithm.cs
- OptimizerPatterns.cs
- AuthorizationPolicyTypeElement.cs
- FrameworkElementFactory.cs
- Gdiplus.cs
- RegexTree.cs
- AnnotationAdorner.cs
- StringArrayConverter.cs
- TemplateBuilder.cs
- SchemaImporterExtensionsSection.cs
- ServiceDeploymentInfo.cs
- SubpageParagraph.cs
- XmlMemberMapping.cs
- KnownBoxes.cs
- IDReferencePropertyAttribute.cs
- XmlArrayItemAttribute.cs
- FlowLayoutPanel.cs
- HitTestWithGeometryDrawingContextWalker.cs
- WebPartCancelEventArgs.cs
- MailAddressCollection.cs
- PeerCollaborationPermission.cs
- TextParagraph.cs
- Soap.cs
- FontUnitConverter.cs
- XmlSchemaAll.cs
- TargetParameterCountException.cs
- XmlNodeChangedEventArgs.cs
- ButtonRenderer.cs
- GridItemPattern.cs
- BlurBitmapEffect.cs
- ProfessionalColorTable.cs
- WebEncodingValidatorAttribute.cs
- PersistChildrenAttribute.cs
- AdornerDecorator.cs
- DataTableNewRowEvent.cs
- TextBoxLine.cs
- CommandField.cs
- PLINQETWProvider.cs
- ContextMenuStrip.cs
- MDIControlStrip.cs
- WorkerRequest.cs
- SmtpNegotiateAuthenticationModule.cs
- Identifier.cs
- ConnectorMovedEventArgs.cs
- ValueProviderWrapper.cs
- WebPartEditorCancelVerb.cs
- PlainXmlSerializer.cs
- DataSourceControl.cs
- UndoManager.cs
- Buffer.cs
- SetStoryboardSpeedRatio.cs
- XmlWriterDelegator.cs
- QueryAccessibilityHelpEvent.cs
- IpcChannelHelper.cs