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
- AllowedAudienceUriElementCollection.cs
- HeaderedItemsControl.cs
- MSAAEventDispatcher.cs
- SqlUserDefinedAggregateAttribute.cs
- PtsCache.cs
- RequestCachingSection.cs
- RijndaelManaged.cs
- SqlDataSourceEnumerator.cs
- HTMLTagNameToTypeMapper.cs
- ViewGenerator.cs
- StringDictionaryCodeDomSerializer.cs
- CanExpandCollapseAllConverter.cs
- ResourceAttributes.cs
- CompleteWizardStep.cs
- HandlerMappingMemo.cs
- StickyNoteAnnotations.cs
- DialogResultConverter.cs
- DocumentOrderComparer.cs
- SqlDataAdapter.cs
- Button.cs
- Activator.cs
- BindingSource.cs
- StreamGeometry.cs
- BaseContextMenu.cs
- XmlNavigatorStack.cs
- WasEndpointConfigContainer.cs
- QilNode.cs
- AssemblyCollection.cs
- IdentityManager.cs
- x509utils.cs
- ScrollItemPattern.cs
- HyperLinkField.cs
- GetIsBrowserClientRequest.cs
- XPathNodeList.cs
- Buffer.cs
- DataGridViewCellFormattingEventArgs.cs
- keycontainerpermission.cs
- XmlSchemaAnnotation.cs
- BaseCollection.cs
- PageCodeDomTreeGenerator.cs
- NativeMethods.cs
- ToolStripPanel.cs
- SoapIncludeAttribute.cs
- ByteKeyFrameCollection.cs
- OrderByLifter.cs
- HttpCacheVaryByContentEncodings.cs
- GreenMethods.cs
- ItemCollection.cs
- MailMessage.cs
- DbDataReader.cs
- XamlDebuggerXmlReader.cs
- TextEvent.cs
- RichTextBox.cs
- MonthChangedEventArgs.cs
- EntityFrameworkVersions.cs
- cookie.cs
- TrustLevelCollection.cs
- ProxyHelper.cs
- SHA512.cs
- KernelTypeValidation.cs
- AbsoluteQuery.cs
- KeyValueInternalCollection.cs
- ScriptRef.cs
- DataControlExtensions.cs
- WindowsGraphicsWrapper.cs
- DropTarget.cs
- FatalException.cs
- dbenumerator.cs
- HwndSourceKeyboardInputSite.cs
- ComPlusDiagnosticTraceRecords.cs
- PropertyGridCommands.cs
- TranslateTransform.cs
- LineServices.cs
- SamlConditions.cs
- CallbackHandler.cs
- DataGridViewCheckBoxColumn.cs
- DmlSqlGenerator.cs
- WebPartEditorCancelVerb.cs
- NamespaceMapping.cs
- DataControlFieldHeaderCell.cs
- NativeMethods.cs
- DataServiceRequest.cs
- RegistrySecurity.cs
- Hashtable.cs
- Menu.cs
- webproxy.cs
- FixedTextView.cs
- XPathChildIterator.cs
- SoapConverter.cs
- Nodes.cs
- Gdiplus.cs
- Label.cs
- TraversalRequest.cs
- SimpleType.cs
- IndexOutOfRangeException.cs
- CalendarDay.cs
- ActivityCollectionMarkupSerializer.cs
- GeometryCollection.cs
- DataGridViewSelectedRowCollection.cs
- Geometry3D.cs