Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CompMod / System / ComponentModel / Design / HelpKeywordAttribute.cs / 1305376 / 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); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// 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); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ContainerParagraph.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- TextDocumentView.cs
- ConfigXmlText.cs
- TextDecorationUnitValidation.cs
- ClientFactory.cs
- externdll.cs
- StringPropertyBuilder.cs
- SaveFileDialog.cs
- ClosableStream.cs
- CodePropertyReferenceExpression.cs
- CngKeyBlobFormat.cs
- DocumentEventArgs.cs
- QilPatternFactory.cs
- GlyphShapingProperties.cs
- ObjectDataSourceStatusEventArgs.cs
- ArrayExtension.cs
- HGlobalSafeHandle.cs
- HostedTransportConfigurationManager.cs
- RunInstallerAttribute.cs
- ConfigurationElement.cs
- ExtensionFile.cs
- ExpanderAutomationPeer.cs
- EndPoint.cs
- HttpStaticObjectsCollectionWrapper.cs
- CodeNamespace.cs
- ConnectionOrientedTransportChannelFactory.cs
- CombinedGeometry.cs
- XpsFilter.cs
- OverflowException.cs
- ListViewCommandEventArgs.cs
- FormViewDeleteEventArgs.cs
- EntryWrittenEventArgs.cs
- XmlObjectSerializerWriteContext.cs
- XmlDomTextWriter.cs
- ValidateNames.cs
- TextBox.cs
- DependencyObject.cs
- UnsafeNativeMethods.cs
- ListView.cs
- ForeignKeyConstraint.cs
- WindowsListViewSubItem.cs
- CoTaskMemHandle.cs
- WebChannelFactory.cs
- DirectionalLight.cs
- XmlEncodedRawTextWriter.cs
- WeakHashtable.cs
- DataGridViewTopRowAccessibleObject.cs
- ProfilePropertySettingsCollection.cs
- FontFamilyConverter.cs
- UIElement3DAutomationPeer.cs
- CacheModeValueSerializer.cs
- NavigationHelper.cs
- TcpConnectionPoolSettingsElement.cs
- XmlTextEncoder.cs
- StrokeNodeEnumerator.cs
- ToolStripManager.cs
- IncrementalHitTester.cs
- UnsafeNativeMethods.cs
- ComboBoxRenderer.cs
- HttpStreamMessageEncoderFactory.cs
- ConstraintConverter.cs
- COM2TypeInfoProcessor.cs
- EntityDataSourceContainerNameConverter.cs
- CodeSnippetStatement.cs
- FigureParaClient.cs
- GridViewDeleteEventArgs.cs
- PolyBezierSegment.cs
- ClientApiGenerator.cs
- TcpAppDomainProtocolHandler.cs
- UnknownWrapper.cs
- DataBindingList.cs
- Panel.cs
- StylusPointProperties.cs
- XmlSchemaSet.cs
- RightNameExpirationInfoPair.cs
- ServicePrincipalNameElement.cs
- printdlgexmarshaler.cs
- ColorConvertedBitmap.cs
- TextTreeFixupNode.cs
- ProcessHost.cs
- CreateDataSourceDialog.cs
- ProtocolsConfiguration.cs
- EntityWithKeyStrategy.cs
- UserNamePasswordValidator.cs
- RadialGradientBrush.cs
- ScrollChangedEventArgs.cs
- DefaultValueTypeConverter.cs
- __Error.cs
- ScrollItemPattern.cs
- parserscommon.cs
- ExtractorMetadata.cs
- FreeFormDesigner.cs
- DbProviderServices.cs
- RadioButtonStandardAdapter.cs
- ActiveXContainer.cs
- PhysicalAddress.cs
- BasicHttpMessageSecurityElement.cs
- ToolStripItemTextRenderEventArgs.cs
- RadioButton.cs