Code:
/ DotNET / DotNET / 8.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
- WindowsListViewItem.cs
- ThreadAttributes.cs
- Attachment.cs
- ReversePositionQuery.cs
- CharKeyFrameCollection.cs
- x509utils.cs
- VolatileEnlistmentMultiplexing.cs
- WorkflowMarkupSerializerMapping.cs
- SqlBuilder.cs
- ProxyWebPartConnectionCollection.cs
- LongValidatorAttribute.cs
- SQLInt64.cs
- ProvidePropertyAttribute.cs
- DateTimeFormat.cs
- CookieProtection.cs
- LostFocusEventManager.cs
- WindowsFormsDesignerOptionService.cs
- CommandField.cs
- DataGridViewColumnTypePicker.cs
- WebBrowserEvent.cs
- EnumBuilder.cs
- WindowsToolbarAsMenu.cs
- SafeEventLogWriteHandle.cs
- TlsnegoTokenAuthenticator.cs
- StringReader.cs
- OleDbCommandBuilder.cs
- AssemblyAttributes.cs
- SqlCacheDependency.cs
- RoutedEventArgs.cs
- StaticFileHandler.cs
- ProxyWebPartConnectionCollection.cs
- XmlElementCollection.cs
- Sequence.cs
- ConsumerConnectionPoint.cs
- QilBinary.cs
- Function.cs
- TemplateKeyConverter.cs
- SubstitutionList.cs
- MobileControlPersister.cs
- ColorContext.cs
- TextEndOfParagraph.cs
- StringAnimationUsingKeyFrames.cs
- GridItemPatternIdentifiers.cs
- SHA512.cs
- InputReferenceExpression.cs
- BindableTemplateBuilder.cs
- SimplePropertyEntry.cs
- CharEntityEncoderFallback.cs
- Rect.cs
- IdleTimeoutMonitor.cs
- ColumnHeader.cs
- TextServicesDisplayAttribute.cs
- HitTestDrawingContextWalker.cs
- PnrpPermission.cs
- GPRECT.cs
- RuleElement.cs
- Cursors.cs
- FrameSecurityDescriptor.cs
- SynthesizerStateChangedEventArgs.cs
- CodeMethodReturnStatement.cs
- DefaultValueConverter.cs
- SerTrace.cs
- DataControlReferenceCollection.cs
- DynamicDocumentPaginator.cs
- AuthenticationModuleElement.cs
- DesignTimeVisibleAttribute.cs
- InkPresenter.cs
- Choices.cs
- SectionXmlInfo.cs
- TakeQueryOptionExpression.cs
- HtmlInputSubmit.cs
- XmlElementCollection.cs
- ToolStripPanelRow.cs
- EncoderReplacementFallback.cs
- ListViewDataItem.cs
- AttributeEmitter.cs
- ResolvedKeyFrameEntry.cs
- CatalogZone.cs
- EventToken.cs
- FixedBufferAttribute.cs
- X509CertificateCollection.cs
- XmlReaderSettings.cs
- _Rfc2616CacheValidators.cs
- SqlUDTStorage.cs
- EntryIndex.cs
- _FtpDataStream.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- NetworkCredential.cs
- CfgParser.cs
- GenerateHelper.cs
- CustomAssemblyResolver.cs
- ApplicationHost.cs
- XmlTextAttribute.cs
- ConsumerConnectionPointCollection.cs
- ListArgumentProvider.cs
- DrawTreeNodeEventArgs.cs
- HostExecutionContextManager.cs
- LayoutExceptionEventArgs.cs
- LineServicesRun.cs
- OutputCacheSettings.cs