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
- InputLangChangeRequestEvent.cs
- PlaceHolder.cs
- EventProxy.cs
- LineUtil.cs
- Environment.cs
- PerformanceCounters.cs
- AppDomainUnloadedException.cs
- WebAdminConfigurationHelper.cs
- HyperLinkStyle.cs
- DataTableCollection.cs
- AdRotator.cs
- MSAAWinEventWrap.cs
- PageThemeCodeDomTreeGenerator.cs
- CustomLineCap.cs
- WebControlParameterProxy.cs
- Int32KeyFrameCollection.cs
- ListViewDesigner.cs
- x509utils.cs
- NodeLabelEditEvent.cs
- MsmqReceiveHelper.cs
- ConfigsHelper.cs
- TrueReadOnlyCollection.cs
- RichTextBoxAutomationPeer.cs
- DiscreteKeyFrames.cs
- ApplicationBuildProvider.cs
- RenderDataDrawingContext.cs
- TextFormatterImp.cs
- RichTextBoxAutomationPeer.cs
- EntityDataSourceConfigureObjectContext.cs
- ScrollContentPresenter.cs
- SqlCommandBuilder.cs
- StringValueConverter.cs
- HttpException.cs
- EventPropertyMap.cs
- InternalTypeHelper.cs
- CodeMethodInvokeExpression.cs
- StreamWriter.cs
- DefaultWorkflowTransactionService.cs
- ExtensionFile.cs
- PageCatalogPart.cs
- StreamReader.cs
- MemberRelationshipService.cs
- WebControl.cs
- _ScatterGatherBuffers.cs
- ConnectionsZoneAutoFormat.cs
- ListBoxAutomationPeer.cs
- SessionStateItemCollection.cs
- DataGridViewTextBoxCell.cs
- TypeConvertions.cs
- TraceHandlerErrorFormatter.cs
- ConnectionStringsSection.cs
- File.cs
- SmtpException.cs
- CodeBlockBuilder.cs
- UnaryOperationBinder.cs
- RightsManagementEncryptionTransform.cs
- LineProperties.cs
- ImageCodecInfo.cs
- XPathCompiler.cs
- ConditionalWeakTable.cs
- XmlUrlResolver.cs
- RepeatEnumerable.cs
- UserPreferenceChangingEventArgs.cs
- InputScopeConverter.cs
- WebControl.cs
- XmlSerializer.cs
- SystemPens.cs
- SiteMembershipCondition.cs
- SqlTrackingQuery.cs
- CompilationSection.cs
- FileSystemEventArgs.cs
- PasswordBoxAutomationPeer.cs
- XamlTypeMapper.cs
- StorageScalarPropertyMapping.cs
- OdbcConnectionOpen.cs
- StaticSiteMapProvider.cs
- WebPartActionVerb.cs
- Update.cs
- EventBuilder.cs
- ScrollItemProviderWrapper.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- UInt32Storage.cs
- ReferencedType.cs
- TemplatedWizardStep.cs
- CatchDesigner.xaml.cs
- PageAsyncTask.cs
- EncryptedKeyIdentifierClause.cs
- WebBrowsableAttribute.cs
- BitmapEffect.cs
- EncryptedXml.cs
- SqlUtil.cs
- ApplicationHost.cs
- TimerTable.cs
- Scheduling.cs
- ServiceOperationUIEditor.cs
- XmlCharCheckingWriter.cs
- MergablePropertyAttribute.cs
- DataGridColumnCollection.cs
- ModuleBuilderData.cs
- XmlDeclaration.cs