Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / InheritanceUI.cs / 1 / InheritanceUI.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Windows.Forms.Design { using System; using System.ComponentModel; using System.ComponentModel.Design; using System.Design; using System.Drawing; using System.Diagnostics; using System.Windows.Forms; ////// This class handles the user interface for inherited components. /// internal class InheritanceUI { private static Bitmap inheritanceGlyph; private static Rectangle inheritanceGlyphRect; private ToolTip tooltip; ////// The bitmap we use to show inheritance. /// public Bitmap InheritanceGlyph { get { if (inheritanceGlyph == null) { inheritanceGlyph = new Bitmap(typeof(InheritanceUI), "InheritedGlyph.bmp"); inheritanceGlyph.MakeTransparent(); } return inheritanceGlyph; } } ////// The rectangle surrounding the glyph. /// public Rectangle InheritanceGlyphRectangle { get { if (inheritanceGlyphRect == Rectangle.Empty) { Size size = InheritanceGlyph.Size; inheritanceGlyphRect = new Rectangle(0, 0, size.Width, size.Height); } return inheritanceGlyphRect; } } ////// Adds an inherited control to our list. This creates a tool tip for that /// control. /// public void AddInheritedControl(Control c, InheritanceLevel level) { if (tooltip == null) { tooltip = new ToolTip(); tooltip.ShowAlways = true; } Debug.Assert(level != InheritanceLevel.NotInherited, "This should only be called for inherited components."); string text; if (level == InheritanceLevel.InheritedReadOnly) { text = SR.GetString(SR.DesignerInheritedReadOnly); } else { text = SR.GetString(SR.DesignerInherited); } tooltip.SetToolTip(c, text); // Also, set all of its non-sited children foreach(Control child in c.Controls) { if (child.Site == null) { tooltip.SetToolTip(child, text); } } } public void Dispose() { if (tooltip != null) { tooltip.Dispose(); } } ////// Removes a previously added inherited control. /// public void RemoveInheritedControl(Control c) { if (tooltip != null && tooltip.GetToolTip(c).Length > 0) { tooltip.SetToolTip(c, null); // Also, set all of its non-sited children foreach(Control child in c.Controls) { if (child.Site == null) { tooltip.SetToolTip(child, null); } } } } } } // 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
- WorkflowViewService.cs
- X509SubjectKeyIdentifierClause.cs
- Error.cs
- ExceptionCollection.cs
- ExtendedProtectionPolicyElement.cs
- MenuItem.cs
- StaticTextPointer.cs
- ErrorHandlingAcceptor.cs
- ExpressionEditorAttribute.cs
- Line.cs
- AddInSegmentDirectoryNotFoundException.cs
- BitmapVisualManager.cs
- ProfileElement.cs
- _HTTPDateParse.cs
- ContentElementCollection.cs
- NativeMethods.cs
- ContextMenu.cs
- ContextToken.cs
- CodeExpressionStatement.cs
- NotifyIcon.cs
- ApplicationFileCodeDomTreeGenerator.cs
- CodeIterationStatement.cs
- Pen.cs
- FilterException.cs
- ProfilePropertyMetadata.cs
- XmlElementAttributes.cs
- SerialErrors.cs
- CheckBox.cs
- RoleGroupCollectionEditor.cs
- AddInAttribute.cs
- CustomActivityDesigner.cs
- PropertyRecord.cs
- Translator.cs
- TransactionFlowOption.cs
- HttpCachePolicyWrapper.cs
- SessionEndingEventArgs.cs
- DoubleStorage.cs
- TextBoxBaseDesigner.cs
- HTTP_SERVICE_CONFIG_URLACL_PARAM.cs
- HttpApplicationFactory.cs
- NullableDoubleAverageAggregationOperator.cs
- FixedLineResult.cs
- AdRotatorDesigner.cs
- EndpointDiscoveryBehavior.cs
- OperationCanceledException.cs
- Content.cs
- NameValueConfigurationCollection.cs
- ObjectDataSource.cs
- ExternalException.cs
- CultureTable.cs
- ErrorFormatterPage.cs
- EmptyElement.cs
- SqlConnection.cs
- TargetConverter.cs
- SolidColorBrush.cs
- VirtualDirectoryMappingCollection.cs
- RelationshipSet.cs
- ClientSettings.cs
- DataPagerFieldCollection.cs
- FileDialog_Vista_Interop.cs
- ProxyWebPartConnectionCollection.cs
- LocalIdKeyIdentifierClause.cs
- PathHelper.cs
- TextLineResult.cs
- SmiConnection.cs
- CodeDOMUtility.cs
- QueueTransferProtocol.cs
- DeploymentExceptionMapper.cs
- FileAuthorizationModule.cs
- LingerOption.cs
- MDIControlStrip.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- MatrixAnimationUsingKeyFrames.cs
- SqlInternalConnectionTds.cs
- Vector3dCollection.cs
- ColorConvertedBitmapExtension.cs
- TextServicesCompartmentContext.cs
- XmlQualifiedName.cs
- Item.cs
- XPathBuilder.cs
- XmlSchemaExternal.cs
- ToolStripItem.cs
- EventItfInfo.cs
- TlsSspiNegotiation.cs
- printdlgexmarshaler.cs
- SoapClientProtocol.cs
- BrowserTree.cs
- FaultConverter.cs
- DataGridHeadersVisibilityToVisibilityConverter.cs
- ObjectDataSourceStatusEventArgs.cs
- _NestedSingleAsyncResult.cs
- CompareValidator.cs
- StylusPoint.cs
- SpecialFolderEnumConverter.cs
- MulticastDelegate.cs
- X509SecurityToken.cs
- CodeSnippetCompileUnit.cs
- Triplet.cs
- MemberAssignment.cs
- FixedPageProcessor.cs