Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / WinForms / Managed / System / WinForms / DrawToolTipEventArgs.cs / 1 / DrawToolTipEventArgs.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System.Diagnostics; using System; using System.Runtime.InteropServices; using System.ComponentModel; using System.Windows.Forms.VisualStyles; using System.Drawing; using System.Windows.Forms.Internal; using Microsoft.Win32; ////// /// This class contains the information a user needs to paint the ToolTip. /// public class DrawToolTipEventArgs : EventArgs { private readonly Graphics graphics; private readonly IWin32Window associatedWindow; private readonly Control associatedControl; private readonly Rectangle bounds; private readonly string toolTipText; private readonly Color backColor; private readonly Color foreColor; private readonly Font font; ////// /// Creates a new DrawToolTipEventArgs with the given parameters. /// public DrawToolTipEventArgs(Graphics graphics, IWin32Window associatedWindow, Control associatedControl, Rectangle bounds, string toolTipText, Color backColor, Color foreColor, Font font) { this.graphics = graphics; this.associatedWindow = associatedWindow; this.associatedControl = associatedControl; this.bounds = bounds; this.toolTipText = toolTipText; this.backColor = backColor; this.foreColor = foreColor; this.font = font; } ////// /// Graphics object with which painting should be done. /// public Graphics Graphics { get { return graphics; } } ////// /// The window for which the tooltip is being painted. /// public IWin32Window AssociatedWindow { get { return associatedWindow; } } ////// /// The control for which the tooltip is being painted. /// public Control AssociatedControl { get { return associatedControl; } } ////// /// The rectangle outlining the area in which the painting should be done. /// public Rectangle Bounds { get { return bounds; } } ////// /// The text that should be drawn. /// public string ToolTipText { get { return toolTipText; } } ////// /// The font used to draw tooltip text. /// public Font Font { get { return font; } } ////// /// Draws the background of the ToolTip. /// public void DrawBackground() { Brush backBrush = new SolidBrush(backColor); Graphics.FillRectangle(backBrush, bounds); backBrush.Dispose(); } ////// /// Draws the text (overloaded) /// public void DrawText() { //Pass in a set of flags to mimic default behavior DrawText(TextFormatFlags.HorizontalCenter | TextFormatFlags.VerticalCenter | TextFormatFlags.SingleLine | TextFormatFlags.HidePrefix); } ////// /// Draws the text (overloaded) - takes a TextFormatFlags argument. /// public void DrawText(TextFormatFlags flags) { TextRenderer.DrawText(graphics, toolTipText, font, bounds, foreColor, flags); } ////// /// Draws a border for the ToolTip similar to the default border. /// public void DrawBorder() { ControlPaint.DrawBorder(graphics, bounds, SystemColors.WindowFrame, ButtonBorderStyle.Solid); } } } // 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
- DispatcherProcessingDisabled.cs
- WebScriptMetadataMessageEncoderFactory.cs
- DataColumnMappingCollection.cs
- QueryOperationResponseOfT.cs
- MenuItemStyleCollectionEditor.cs
- OpenTypeLayoutCache.cs
- TemplateField.cs
- XsdBuildProvider.cs
- HtmlHistory.cs
- IteratorAsyncResult.cs
- SelectedGridItemChangedEvent.cs
- MultiAsyncResult.cs
- TimelineCollection.cs
- ObjectAnimationBase.cs
- Bezier.cs
- ListComponentEditor.cs
- ItemContainerGenerator.cs
- WebPartVerb.cs
- WpfSharedBamlSchemaContext.cs
- ObjectSet.cs
- PropertyDescriptor.cs
- ProfileProvider.cs
- IHttpResponseInternal.cs
- wmiutil.cs
- InputChannelAcceptor.cs
- ObjectConverter.cs
- SHA1.cs
- DefinitionBase.cs
- JoinGraph.cs
- SocketCache.cs
- ExtractorMetadata.cs
- HttpRawResponse.cs
- RenderDataDrawingContext.cs
- MessagePartSpecification.cs
- EntryIndex.cs
- Emitter.cs
- DataTableNewRowEvent.cs
- GridViewPageEventArgs.cs
- TypeConverterAttribute.cs
- ConsumerConnectionPointCollection.cs
- CompiledQueryCacheEntry.cs
- MultiAsyncResult.cs
- InputDevice.cs
- EmbossBitmapEffect.cs
- XamlSerializer.cs
- CanonicalFontFamilyReference.cs
- LicenseProviderAttribute.cs
- XmlSchemaComplexType.cs
- EventProvider.cs
- ItemContainerPattern.cs
- ClientSettingsSection.cs
- SocketElement.cs
- SchemaEntity.cs
- Win32Native.cs
- MobileControlBuilder.cs
- FontFamilyConverter.cs
- EndPoint.cs
- Hash.cs
- SqlStream.cs
- SmiEventSink_DeferedProcessing.cs
- StylusDownEventArgs.cs
- Tag.cs
- Policy.cs
- PtsHelper.cs
- ResXResourceReader.cs
- RijndaelManaged.cs
- StatusBarPanelClickEvent.cs
- DelayedRegex.cs
- PropertyDescriptorGridEntry.cs
- UnicodeEncoding.cs
- Codec.cs
- FlowchartDesigner.Helpers.cs
- DynamicResourceExtension.cs
- UrlAuthFailedErrorFormatter.cs
- Listbox.cs
- PassportAuthenticationModule.cs
- ErrorTableItemStyle.cs
- LinearGradientBrush.cs
- ExpressionBinding.cs
- ItemsChangedEventArgs.cs
- KoreanLunisolarCalendar.cs
- Debugger.cs
- SoapSchemaMember.cs
- CanonicalFontFamilyReference.cs
- ButtonColumn.cs
- QilFunction.cs
- MatcherBuilder.cs
- Int32CAMarshaler.cs
- HyperlinkAutomationPeer.cs
- HttpCookieCollection.cs
- DoubleAnimationUsingKeyFrames.cs
- TextAutomationPeer.cs
- BinarySerializer.cs
- HtmlInputCheckBox.cs
- FlowLayoutPanel.cs
- SchemaElementLookUpTableEnumerator.cs
- LogicalTreeHelper.cs
- ReaderOutput.cs
- SafeLibraryHandle.cs
- ItemDragEvent.cs