Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / DrawToolTipEventArgs.cs / 1305376 / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Int32RectValueSerializer.cs
- EventLogEntry.cs
- TypeValidationEventArgs.cs
- ActiveDocumentEvent.cs
- Set.cs
- SerializationAttributes.cs
- SchemaName.cs
- TransformGroup.cs
- XmlSchemaElement.cs
- FlagsAttribute.cs
- DocumentGridPage.cs
- UnsafeNativeMethods.cs
- PolicyLevel.cs
- SqlRowUpdatingEvent.cs
- PaperSource.cs
- WebResourceUtil.cs
- DiscoveryEndpointValidator.cs
- HtmlInputText.cs
- ObjectNavigationPropertyMapping.cs
- XmlTextReaderImpl.cs
- XmlSerializerAssemblyAttribute.cs
- ProviderSettings.cs
- SelectingProviderEventArgs.cs
- Variant.cs
- RunWorkerCompletedEventArgs.cs
- ViewStateException.cs
- TextSelection.cs
- CornerRadius.cs
- IIS7WorkerRequest.cs
- TemplateParser.cs
- DataRowChangeEvent.cs
- ShutDownListener.cs
- MouseGestureValueSerializer.cs
- CodeNamespaceImportCollection.cs
- PointUtil.cs
- StateMachineDesignerPaint.cs
- _FtpDataStream.cs
- MainMenu.cs
- ExtendedProtectionPolicyTypeConverter.cs
- EditCommandColumn.cs
- OneOfTypeConst.cs
- PropertyKey.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- ProcessingInstructionAction.cs
- SafeLocalMemHandle.cs
- VisualStateGroup.cs
- PackagePart.cs
- Menu.cs
- ConstructorNeedsTagAttribute.cs
- _UncName.cs
- AspNetCompatibilityRequirementsMode.cs
- SplitterPanelDesigner.cs
- SqlTypesSchemaImporter.cs
- SetterBase.cs
- InkCanvasAutomationPeer.cs
- SystemWebCachingSectionGroup.cs
- StdRegProviderWrapper.cs
- NamedPipeWorkerProcess.cs
- WebPartDeleteVerb.cs
- FontStretch.cs
- DataColumn.cs
- DefaultWorkflowLoaderService.cs
- DataTemplateSelector.cs
- ProcessHostFactoryHelper.cs
- _ScatterGatherBuffers.cs
- XmlSiteMapProvider.cs
- UndirectedGraph.cs
- MarkupWriter.cs
- WebPartVerbCollection.cs
- Vector3D.cs
- RequestCachePolicy.cs
- RootCodeDomSerializer.cs
- ExpressionVisitor.cs
- CharAnimationUsingKeyFrames.cs
- KeyEventArgs.cs
- MetadataItemSerializer.cs
- ComponentEditorPage.cs
- Predicate.cs
- SiteMapSection.cs
- EndpointNotFoundException.cs
- PanelStyle.cs
- BinaryReader.cs
- NameTable.cs
- NamespaceImport.cs
- XmlElementAttribute.cs
- parserscommon.cs
- ListSortDescriptionCollection.cs
- ReferenceConverter.cs
- ConstraintCollection.cs
- BamlResourceDeserializer.cs
- DemultiplexingClientMessageFormatter.cs
- Char.cs
- SplitterEvent.cs
- WriteTimeStream.cs
- SessionEndedEventArgs.cs
- RecordConverter.cs
- StyleSelector.cs
- _OverlappedAsyncResult.cs
- ConfigurationStrings.cs
- bindurihelper.cs