ToolStripItem Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет абстрактный базовый класс, который управляет событиями и структурой всех элементов, которые могут содержаться в элементах управления ToolStrip или ToolStripDropDown.
public ref class ToolStripItem abstract : System::ComponentModel::Component, IDisposable, System::Windows::Forms::IDropTarget
public ref class ToolStripItem abstract : System::Windows::Forms::BindableComponent, IDisposable, System::Windows::Forms::IDropTarget
public abstract class ToolStripItem : System.ComponentModel.Component, IDisposable, System.Windows.Forms.IDropTarget
public abstract class ToolStripItem : System.Windows.Forms.BindableComponent, IDisposable, System.Windows.Forms.IDropTarget
type ToolStripItem = class
inherit Component
interface IDropTarget
interface IComponent
interface IDisposable
type ToolStripItem = class
inherit BindableComponent
interface IDropTarget
interface IComponent
interface IDisposable
Public MustInherit Class ToolStripItem
Inherits Component
Implements IDisposable, IDropTarget
Public MustInherit Class ToolStripItem
Inherits BindableComponent
Implements IDisposable, IDropTarget
- Наследование
- Наследование
- Производный
- Реализации
Примеры
В следующем примере кода показано, как реализовать пользовательский ToolStripItem элемент управления.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Windows.Forms;
namespace RolloverItemDemoLib
{
// This class implements a ToolStripItem that highlights
// its border and text when the mouse enters its
// client rectangle. It has a clickable state which is
// exposed through the Clicked property and displayed
// by highlighting or graying out the item's image.
public class RolloverItem : ToolStripItem
{
private bool clickedValue = false;
private bool rolloverValue = false;
private Rectangle imageRect;
private Rectangle textRect;
// For brevity, this implementation limits the possible
// TextDirection values to ToolStripTextDirection.Horizontal.
public override ToolStripTextDirection TextDirection
{
get
{
return base.TextDirection;
}
set
{
if (value == ToolStripTextDirection.Horizontal)
{
base.TextDirection = value;
}
else
{
throw new ArgumentException(
"RolloverItem supports only horizontal text.");
}
}
}
// For brevity, this implementation limits the possible
// TextImageRelation values to ImageBeforeText and TextBeforeImage.
public new TextImageRelation TextImageRelation
{
get
{
return base.TextImageRelation;
}
set
{
if (value == TextImageRelation.ImageBeforeText ||
value == TextImageRelation.TextBeforeImage)
{
base.TextImageRelation = value;
}
else
{
throw new ArgumentException(
"Unsupported TextImageRelation value.");
}
}
}
// This property returns true if the mouse is
// inside the client rectangle.
public bool Rollover
{
get
{
return this.rolloverValue;
}
}
// This property returns true if the item
// has been toggled into the clicked state.
// Clicking again toggles it to the
// unclicked state.
public bool Clicked
{
get
{
return this.clickedValue;
}
}
// The method defines the behavior of the Click event.
// It simply toggles the state of the clickedValue field.
protected override void OnClick(EventArgs e)
{
base.OnClick(e);
this.clickedValue ^= true;
}
// The method defines the behavior of the DoubleClick
// event. It shows a MessageBox with the item's text.
protected override void OnDoubleClick(EventArgs e)
{
base.OnDoubleClick(e);
string msg = String.Format("Item: {0}", this.Text);
MessageBox.Show(msg);
}
// This method defines the behavior of the MouseEnter event.
// It sets the state of the rolloverValue field to true and
// tells the control to repaint.
protected override void OnMouseEnter(EventArgs e)
{
base.OnMouseEnter(e);
this.rolloverValue = true;
this.Invalidate();
}
// This method defines the behavior of the MouseLeave event.
// It sets the state of the rolloverValue field to false and
// tells the control to repaint.
protected override void OnMouseLeave(EventArgs e)
{
base.OnMouseLeave(e);
this.rolloverValue = false;
this.Invalidate();
}
// This method defines the painting behavior of the control.
// It performs the following operations:
//
// Computes the layout of the item's image and text.
// Draws the item's background image.
// Draws the item's image.
// Draws the item's text.
//
// Drawing operations are implemented in the
// RolloverItemRenderer class.
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
if (this.Owner != null)
{
// Find the dimensions of the image and the text
// areas of the item.
this.ComputeImageAndTextLayout();
// Draw the background. This includes drawing a highlighted
// border when the mouse is in the client area.
ToolStripItemRenderEventArgs ea = new ToolStripItemRenderEventArgs(
e.Graphics,
this);
this.Owner.Renderer.DrawItemBackground(ea);
// Draw the item's image.
ToolStripItemImageRenderEventArgs irea =
new ToolStripItemImageRenderEventArgs(
e.Graphics,
this,
imageRect );
this.Owner.Renderer.DrawItemImage(irea);
// If the item is on a drop-down, give its
// text a different highlighted color.
Color highlightColor =
this.IsOnDropDown ?
Color.Salmon : SystemColors.ControlLightLight;
// Draw the text, and highlight it if the
// the rollover state is true.
ToolStripItemTextRenderEventArgs rea =
new ToolStripItemTextRenderEventArgs(
e.Graphics,
this,
base.Text,
textRect,
this.rolloverValue ? highlightColor : base.ForeColor,
base.Font,
base.TextAlign);
this.Owner.Renderer.DrawItemText(rea);
}
}
// This utility method computes the layout of the
// RolloverItem control's image area and the text area.
// For brevity, only the following settings are
// supported:
//
// ToolStripTextDirection.Horizontal
// TextImageRelation.ImageBeforeText
// TextImageRelation.ImageBeforeText
//
// It would not be difficult to support vertical text
// directions and other image/text relationships.
private void ComputeImageAndTextLayout()
{
Rectangle cr = base.ContentRectangle;
Image img = base.Owner.ImageList.Images[base.ImageKey];
// Compute the center of the item's ContentRectangle.
int centerY = (cr.Height - img.Height) / 2;
// Find the dimensions of the image and the text
// areas of the item. The text occupies the space
// not filled by the image.
if (base.TextImageRelation == TextImageRelation.ImageBeforeText &&
base.TextDirection == ToolStripTextDirection.Horizontal)
{
imageRect = new Rectangle(
base.ContentRectangle.Left,
centerY,
base.Image.Width,
base.Image.Height);
textRect = new Rectangle(
imageRect.Width,
base.ContentRectangle.Top,
base.ContentRectangle.Width - imageRect.Width,
base.ContentRectangle.Height);
}
else if (base.TextImageRelation == TextImageRelation.TextBeforeImage &&
base.TextDirection == ToolStripTextDirection.Horizontal)
{
imageRect = new Rectangle(
base.ContentRectangle.Right - base.Image.Width,
centerY,
base.Image.Width,
base.Image.Height);
textRect = new Rectangle(
base.ContentRectangle.Left,
base.ContentRectangle.Top,
imageRect.X,
base.ContentRectangle.Bottom);
}
}
}
#region RolloverItemRenderer
// This is the custom renderer for the RolloverItem control.
// It draws a border around the item when the mouse is
// in the item's client area. It also draws the item's image
// in an inactive state (grayed out) until the user clicks
// the item to toggle its "clicked" state.
internal class RolloverItemRenderer : ToolStripSystemRenderer
{
protected override void OnRenderItemImage(
ToolStripItemImageRenderEventArgs e)
{
base.OnRenderItemImage(e);
RolloverItem item = e.Item as RolloverItem;
// If the ToolSTripItem is of type RolloverItem,
// perform custom rendering for the image.
if (item != null)
{
if (item.Clicked)
{
// The item is in the clicked state, so
// draw the image as usual.
e.Graphics.DrawImage(
e.Image,
e.ImageRectangle.X,
e.ImageRectangle.Y);
}
else
{
// In the unclicked state, gray out the image.
ControlPaint.DrawImageDisabled(
e.Graphics,
e.Image,
e.ImageRectangle.X,
e.ImageRectangle.Y,
item.BackColor);
}
}
}
// This method defines the behavior for rendering the
// background of a ToolStripItem. If the item is a
// RolloverItem, it paints the item's BackgroundImage
// centered in the client area. If the mouse is in the
// item's client area, a border is drawn around it.
// If the item is on a drop-down or if it is on the
// overflow, a gradient is painted in the background.
protected override void OnRenderItemBackground(
ToolStripItemRenderEventArgs e)
{
base.OnRenderItemBackground(e);
RolloverItem item = e.Item as RolloverItem;
// If the ToolSTripItem is of type RolloverItem,
// perform custom rendering for the background.
if (item != null)
{
if (item.Placement == ToolStripItemPlacement.Overflow ||
item.IsOnDropDown)
{
using (LinearGradientBrush b = new LinearGradientBrush(
item.ContentRectangle,
Color.Salmon,
Color.DarkRed,
0f,
false))
{
e.Graphics.FillRectangle(b, item.ContentRectangle);
}
}
// The RolloverItem control only supports
// the ImageLayout.Center setting for the
// BackgroundImage property.
if (item.BackgroundImageLayout == ImageLayout.Center)
{
// Get references to the item's ContentRectangle
// and BackgroundImage, for convenience.
Rectangle cr = item.ContentRectangle;
Image bgi = item.BackgroundImage;
// Compute the center of the item's ContentRectangle.
int centerX = (cr.Width - bgi.Width) / 2;
int centerY = (cr.Height - bgi.Height) / 2;
// If the item is selected, draw the background
// image as usual. Otherwise, draw it as disabled.
if (item.Selected)
{
e.Graphics.DrawImage(bgi, centerX, centerY);
}
else
{
ControlPaint.DrawImageDisabled(
e.Graphics,
bgi,
centerX,
centerY,
item.BackColor);
}
}
// If the item is in the rollover state,
// draw a border around it.
if (item.Rollover)
{
ControlPaint.DrawFocusRectangle(
e.Graphics,
item.ContentRectangle);
}
}
}
#endregion
}
// This form tests various features of the RolloverItem
// control. RolloverItem conrols are created and added
// to the form's ToolStrip. They are also created and
// added to a button's ContextMenuStrip. The behavior
// of the RolloverItem control differs depending on
// the type of parent control.
public class RolloverItemTestForm : Form
{
private System.Windows.Forms.ToolStrip toolStrip1;
private System.Windows.Forms.Button button1;
private string infoIconKey = "Information icon";
private string handIconKey = "Hand icon";
private string exclIconKey = "Exclamation icon";
private string questionIconKey = "Question icon";
private string warningIconKey = "Warning icon ";
private System.ComponentModel.IContainer components = null;
public RolloverItemTestForm()
{
InitializeComponent();
// Set up the form's ToolStrip control.
InitializeToolStrip();
// Set up the ContextMenuStrip for the button.
InitializeContextMenu();
}
// This utility method initializes the ToolStrip control's
// image list. For convenience, icons from the SystemIcons
// class are used for this demonstration, but any images
// could be used.
private void InitializeImageList(ToolStrip ts)
{
if (ts.ImageList == null)
{
ts.ImageList = new ImageList();
ts.ImageList.ImageSize = SystemIcons.Exclamation.Size;
ts.ImageList.Images.Add(
this.infoIconKey,
SystemIcons.Information);
ts.ImageList.Images.Add(
this.handIconKey,
SystemIcons.Hand);
ts.ImageList.Images.Add(
this.exclIconKey,
SystemIcons.Exclamation);
ts.ImageList.Images.Add(
this.questionIconKey,
SystemIcons.Question);
ts.ImageList.Images.Add(
this.warningIconKey,
SystemIcons.Warning);
}
}
private void InitializeToolStrip()
{
this.InitializeImageList(this.toolStrip1);
this.toolStrip1.Renderer = new RolloverItemRenderer();
RolloverItem item = this.CreateRolloverItem(
this.toolStrip1,
"RolloverItem on ToolStrip",
this.Font,
infoIconKey,
TextImageRelation.ImageBeforeText,
exclIconKey);
this.toolStrip1.Items.Add(item);
item = this.CreateRolloverItem(
this.toolStrip1,
"RolloverItem on ToolStrip",
this.Font,
infoIconKey,
TextImageRelation.ImageBeforeText,
exclIconKey);
this.toolStrip1.Items.Add(item);
}
private void InitializeContextMenu()
{
Font f = new System.Drawing.Font(
"Arial",
18f,
FontStyle.Bold);
ContextMenuStrip cms = new ContextMenuStrip();
this.InitializeImageList(cms);
cms.Renderer = new RolloverItemRenderer();
cms.AutoSize = true;
cms.ShowCheckMargin = false;
cms.ShowImageMargin = false;
RolloverItem item = this.CreateRolloverItem(
cms,
"RolloverItem on ContextMenuStrip",
f,
handIconKey,
TextImageRelation.ImageBeforeText,
exclIconKey);
cms.Items.Add(item);
item = this.CreateRolloverItem(
cms,
"Another RolloverItem on ContextMenuStrip",
f,
questionIconKey,
TextImageRelation.ImageBeforeText,
exclIconKey);
cms.Items.Add(item);
item = this.CreateRolloverItem(
cms,
"And another RolloverItem on ContextMenuStrip",
f,
warningIconKey,
TextImageRelation.ImageBeforeText,
exclIconKey);
cms.Items.Add(item);
cms.Closing += new ToolStripDropDownClosingEventHandler(cms_Closing);
this.button1.ContextMenuStrip = cms;
}
// This method handles the ContextMenuStrip
// control's Closing event. It prevents the
// RolloverItem from closing the drop-down
// when the item is clicked.
void cms_Closing(object sender, ToolStripDropDownClosingEventArgs e)
{
if (e.CloseReason == ToolStripDropDownCloseReason.ItemClicked)
{
e.Cancel = true;
}
}
// This method handles the Click event for the button.
// it selects the first item in the ToolStrip control
// by using the ToolStripITem.Select method.
private void button1_Click(object sender, EventArgs e)
{
RolloverItem item = this.toolStrip1.Items[0] as RolloverItem;
if (item != null)
{
item.Select();
this.Invalidate();
}
}
// This utility method creates a RolloverItem
// and adds it to a ToolStrip control.
private RolloverItem CreateRolloverItem(
ToolStrip owningToolStrip,
string txt,
Font f,
string imgKey,
TextImageRelation tir,
string backImgKey)
{
RolloverItem item = new RolloverItem();
item.Alignment = ToolStripItemAlignment.Left;
item.AllowDrop = false;
item.AutoSize = true;
item.BackgroundImage = owningToolStrip.ImageList.Images[backImgKey];
item.BackgroundImageLayout = ImageLayout.Center;
item.DisplayStyle = ToolStripItemDisplayStyle.ImageAndText;
item.DoubleClickEnabled = true;
item.Enabled = true;
item.Font = f;
// These assignments are equivalent. Each assigns an
// image from the owning toolstrip's image list.
item.ImageKey = imgKey;
//item.Image = owningToolStrip.ImageList.Images[infoIconKey];
//item.ImageIndex = owningToolStrip.ImageList.Images.IndexOfKey(infoIconKey);
item.ImageScaling = ToolStripItemImageScaling.None;
item.Owner = owningToolStrip;
item.Padding = new Padding(2);
item.Text = txt;
item.TextAlign = ContentAlignment.MiddleLeft;
item.TextDirection = ToolStripTextDirection.Horizontal;
item.TextImageRelation = tir;
return item;
}
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
private void InitializeComponent()
{
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.button1 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// toolStrip1
//
this.toolStrip1.AllowItemReorder = true;
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(845, 25);
this.toolStrip1.TabIndex = 0;
this.toolStrip1.Text = "toolStrip1";
//
// button1
//
this.button1.Location = new System.Drawing.Point(12, 100);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(86, 23);
this.button1.TabIndex = 1;
this.button1.Text = "Click to select";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// RolloverItemTestForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 14F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.AutoSize = true;
this.ClientSize = new System.Drawing.Size(845, 282);
this.Controls.Add(this.button1);
this.Controls.Add(this.toolStrip1);
this.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.Name = "RolloverItemTestForm";
this.Text = "Form1";
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
}
static class Program
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new RolloverItemTestForm());
}
}
}
Option Strict On
Option Explicit On
Imports System.Collections.Generic
Imports System.ComponentModel
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
' This class implements a ToolStripItem that highlights
' its border and text when the mouse enters its
' client rectangle. It has a clickable state which is
' exposed through the Clicked property and displayed
' by highlighting or graying out the item's image.
Public Class RolloverItem
Inherits ToolStripItem
Private clickedValue As Boolean = False
Private rolloverValue As Boolean = False
Private imageRect As Rectangle
Private textRect As Rectangle
' For brevity, this implementation limits the possible
' TextDirection values to ToolStripTextDirection.Horizontal.
Public Overrides Property TextDirection() As ToolStripTextDirection
Get
Return MyBase.TextDirection
End Get
Set
If value = ToolStripTextDirection.Horizontal Then
MyBase.TextDirection = value
Else
Throw New ArgumentException( _
"RolloverItem supports only horizontal text.")
End If
End Set
End Property
' For brevity, this implementation limits the possible
' TextImageRelation values to ImageBeforeText and TextBeforeImage.
Public Shadows Property TextImageRelation() As TextImageRelation
Get
Return MyBase.TextImageRelation
End Get
Set
If Value = TextImageRelation.ImageBeforeText OrElse _
Value = TextImageRelation.TextBeforeImage Then
MyBase.TextImageRelation = Value
Else
Throw New ArgumentException("Unsupported TextImageRelation value.")
End If
End Set
End Property
' This property returns true if the mouse is
' inside the client rectangle.
Public ReadOnly Property Rollover() As Boolean
Get
Return Me.rolloverValue
End Get
End Property
' This property returns true if the item
' has been toggled into the clicked state.
' Clicking again toggles it to the
' unclicked state.
Public ReadOnly Property Clicked() As Boolean
Get
Return Me.clickedValue
End Get
End Property
' The method defines the behavior of the Click event.
' It simply toggles the state of the clickedValue field.
Protected Overrides Sub OnClick(e As EventArgs)
MyBase.OnClick(e)
Me.clickedValue = Me.clickedValue Xor True
End Sub
' The method defines the behavior of the DoubleClick
' event. It shows a MessageBox with the item's text.
Protected Overrides Sub OnDoubleClick(e As EventArgs)
MyBase.OnDoubleClick(e)
Dim msg As String = String.Format("Item: {0}", Me.Text)
MessageBox.Show(msg)
End Sub
' This method defines the behavior of the MouseEnter event.
' It sets the state of the rolloverValue field to true and
' tells the control to repaint.
Protected Overrides Sub OnMouseEnter(e As EventArgs)
MyBase.OnMouseEnter(e)
Me.rolloverValue = True
Me.Invalidate()
End Sub
' This method defines the behavior of the MouseLeave event.
' It sets the state of the rolloverValue field to false and
' tells the control to repaint.
Protected Overrides Sub OnMouseLeave(e As EventArgs)
MyBase.OnMouseLeave(e)
Me.rolloverValue = False
Me.Invalidate()
End Sub
' This method defines the painting behavior of the control.
' It performs the following operations:
'
' Computes the layout of the item's image and text.
' Draws the item's background image.
' Draws the item's image.
' Draws the item's text.
'
' Drawing operations are implemented in the
' RolloverItemRenderer class.
Protected Overrides Sub OnPaint(e As PaintEventArgs)
MyBase.OnPaint(e)
If (Me.Owner IsNot Nothing) Then
' Find the dimensions of the image and the text
' areas of the item.
Me.ComputeImageAndTextLayout()
' Draw the background. This includes drawing a highlighted
' border when the mouse is in the client area.
Dim ea As New ToolStripItemRenderEventArgs(e.Graphics, Me)
Me.Owner.Renderer.DrawItemBackground(ea)
' Draw the item's image.
Dim irea As New ToolStripItemImageRenderEventArgs(e.Graphics, Me, imageRect)
Me.Owner.Renderer.DrawItemImage(irea)
' If the item is on a drop-down, give its
' text a different highlighted color.
Dim highlightColor As Color = CType(IIf(Me.IsOnDropDown, Color.Salmon, SystemColors.ControlLightLight), Color)
' Draw the text, and highlight it if the
' the rollover state is true.
Dim rea As New ToolStripItemTextRenderEventArgs( _
e.Graphics, _
Me, _
MyBase.Text, _
textRect, _
CType(IIf(Me.rolloverValue, highlightColor, MyBase.ForeColor), Color), _
MyBase.Font, _
MyBase.TextAlign)
Me.Owner.Renderer.DrawItemText(rea)
End If
End Sub
' This utility method computes the layout of the
' RolloverItem control's image area and the text area.
' For brevity, only the following settings are
' supported:
'
' ToolStripTextDirection.Horizontal
' TextImageRelation.ImageBeforeText
' TextImageRelation.ImageBeforeText
'
' It would not be difficult to support vertical text
' directions and other image/text relationships.
Private Sub ComputeImageAndTextLayout()
Dim cr As Rectangle = MyBase.ContentRectangle
Dim img As Image = MyBase.Owner.ImageList.Images(MyBase.ImageKey)
' Compute the center of the item's ContentRectangle.
Dim centerY As Integer = CInt((cr.Height - img.Height) / 2)
' Find the dimensions of the image and the text
' areas of the item. The text occupies the space
' not filled by the image.
If MyBase.TextImageRelation = _
TextImageRelation.ImageBeforeText AndAlso _
MyBase.TextDirection = ToolStripTextDirection.Horizontal Then
imageRect = New Rectangle( _
MyBase.ContentRectangle.Left, _
centerY, _
MyBase.Image.Width, _
MyBase.Image.Height)
textRect = New Rectangle( _
imageRect.Width, _
MyBase.ContentRectangle.Top, _
MyBase.ContentRectangle.Width - imageRect.Width, _
MyBase.ContentRectangle.Height)
ElseIf MyBase.TextImageRelation = _
TextImageRelation.TextBeforeImage AndAlso _
MyBase.TextDirection = ToolStripTextDirection.Horizontal Then
imageRect = New Rectangle( _
MyBase.ContentRectangle.Right - MyBase.Image.Width, _
centerY, _
MyBase.Image.Width, _
MyBase.Image.Height)
textRect = New Rectangle( _
MyBase.ContentRectangle.Left, _
MyBase.ContentRectangle.Top, _
imageRect.X, _
MyBase.ContentRectangle.Bottom)
End If
End Sub
End Class
' This is the custom renderer for the RolloverItem control.
' It draws a border around the item when the mouse is
' in the item's client area. It also draws the item's image
' in an inactive state (grayed out) until the user clicks
' the item to toggle its "clicked" state.
Friend Class RolloverItemRenderer
Inherits ToolStripSystemRenderer
Protected Overrides Sub OnRenderItemImage(ByVal e As ToolStripItemImageRenderEventArgs)
MyBase.OnRenderItemImage(e)
Dim item As RolloverItem = CType(e.Item, RolloverItem)
' If the ToolSTripItem is of type RolloverItem,
' perform custom rendering for the image.
If (item IsNot Nothing) Then
If item.Clicked Then
' The item is in the clicked state, so
' draw the image as usual.
e.Graphics.DrawImage(e.Image, e.ImageRectangle.X, e.ImageRectangle.Y)
Else
' In the unclicked state, gray out the image.
ControlPaint.DrawImageDisabled(e.Graphics, e.Image, e.ImageRectangle.X, e.ImageRectangle.Y, item.BackColor)
End If
End If
End Sub
' This method defines the behavior for rendering the
' background of a ToolStripItem. If the item is a
' RolloverItem, it paints the item's BackgroundImage
' centered in the client area. If the mouse is in the
' item's client area, a border is drawn around it.
' If the item is on a drop-down or if it is on the
' overflow, a gradient is painted in the background.
Protected Overrides Sub OnRenderItemBackground(ByVal e As ToolStripItemRenderEventArgs)
MyBase.OnRenderItemBackground(e)
Dim item As RolloverItem = CType(e.Item, RolloverItem)
' If the ToolSTripItem is of type RolloverItem,
' perform custom rendering for the background.
If (item IsNot Nothing) Then
If item.Placement = ToolStripItemPlacement.Overflow OrElse item.IsOnDropDown Then
Dim b As New LinearGradientBrush(item.ContentRectangle, Color.Salmon, Color.DarkRed, 0.0F, False)
Try
e.Graphics.FillRectangle(b, item.ContentRectangle)
Finally
b.Dispose()
End Try
End If
' The RolloverItem control only supports
' the ImageLayout.Center setting for the
' BackgroundImage property.
If item.BackgroundImageLayout = ImageLayout.Center Then
' Get references to the item's ContentRectangle
' and BackgroundImage, for convenience.
Dim cr As Rectangle = item.ContentRectangle
Dim bgi As Image = item.BackgroundImage
' Compute the center of the item's ContentRectangle.
Dim centerX As Integer = CInt((cr.Width - bgi.Width) / 2)
Dim centerY As Integer = CInt((cr.Height - bgi.Height) / 2)
' If the item is selected, draw the background
' image as usual. Otherwise, draw it as disabled.
If item.Selected Then
e.Graphics.DrawImage(bgi, centerX, centerY)
Else
ControlPaint.DrawImageDisabled(e.Graphics, bgi, centerX, centerY, item.BackColor)
End If
End If
' If the item is in the rollover state,
' draw a border around it.
If item.Rollover Then
ControlPaint.DrawFocusRectangle(e.Graphics, item.ContentRectangle)
End If
End If
End Sub
End Class
' This form tests various features of the RolloverItem
' control. RolloverItem conrols are created and added
' to the form's ToolStrip. They are also created and
' added to a button's ContextMenuStrip. The behavior
' of the RolloverItem control differs depending on
' the type of parent control.
Public Class RolloverItemTestForm
Inherits Form
Private toolStrip1 As System.Windows.Forms.ToolStrip
Private WithEvents button1 As System.Windows.Forms.Button
Private infoIconKey As String = "Information icon"
Private handIconKey As String = "Hand icon"
Private exclIconKey As String = "Exclamation icon"
Private questionIconKey As String = "Question icon"
Private warningIconKey As String = "Warning icon "
Private components As System.ComponentModel.IContainer = Nothing
Public Sub New()
InitializeComponent()
' Set up the form's ToolStrip control.
InitializeToolStrip()
' Set up the ContextMenuStrip for the button.
InitializeContextMenu()
End Sub
' This utility method initializes the ToolStrip control's
' image list. For convenience, icons from the SystemIcons
' class are used for this demonstration, but any images
' could be used.
Private Sub InitializeImageList(ts As ToolStrip)
If ts.ImageList Is Nothing Then
ts.ImageList = New ImageList()
ts.ImageList.ImageSize = SystemIcons.Exclamation.Size
ts.ImageList.Images.Add(Me.infoIconKey, SystemIcons.Information)
ts.ImageList.Images.Add(Me.handIconKey, SystemIcons.Hand)
ts.ImageList.Images.Add(Me.exclIconKey, SystemIcons.Exclamation)
ts.ImageList.Images.Add(Me.questionIconKey, SystemIcons.Question)
ts.ImageList.Images.Add(Me.warningIconKey, SystemIcons.Warning)
End If
End Sub
Private Sub InitializeToolStrip()
Me.InitializeImageList(Me.toolStrip1)
Me.toolStrip1.Renderer = New RolloverItemRenderer()
Dim item As RolloverItem = Me.CreateRolloverItem(Me.toolStrip1, "RolloverItem on ToolStrip", Me.Font, infoIconKey, TextImageRelation.ImageBeforeText, exclIconKey)
Me.toolStrip1.Items.Add(item)
item = Me.CreateRolloverItem(Me.toolStrip1, "RolloverItem on ToolStrip", Me.Font, infoIconKey, TextImageRelation.ImageBeforeText, exclIconKey)
Me.toolStrip1.Items.Add(item)
End Sub
Private Sub InitializeContextMenu()
Dim f As New System.Drawing.Font("Arial", 18.0F, FontStyle.Bold)
Dim cms As New ContextMenuStrip()
Me.InitializeImageList(cms)
cms.Renderer = New RolloverItemRenderer()
cms.AutoSize = True
cms.ShowCheckMargin = False
cms.ShowImageMargin = False
Dim item As RolloverItem = Me.CreateRolloverItem( _
cms, _
"RolloverItem on ContextMenuStrip", _
f, _
handIconKey, _
TextImageRelation.ImageBeforeText, _
exclIconKey)
cms.Items.Add(item)
item = Me.CreateRolloverItem( _
cms, _
"Another RolloverItem on ContextMenuStrip", _
f, _
questionIconKey, _
TextImageRelation.ImageBeforeText, _
exclIconKey)
cms.Items.Add(item)
item = Me.CreateRolloverItem( _
cms, _
"And another RolloverItem on ContextMenuStrip", _
CType(f, Drawing.Font), _
warningIconKey, _
TextImageRelation.ImageBeforeText, _
exclIconKey)
cms.Items.Add(item)
AddHandler cms.Closing, AddressOf cms_Closing
Me.button1.ContextMenuStrip = cms
End Sub
' This method handles the ContextMenuStrip
' control's Closing event. It prevents the
' RolloverItem from closing the drop-down
' when the item is clicked.
Private Sub cms_Closing(sender As Object, e As ToolStripDropDownClosingEventArgs)
If e.CloseReason = ToolStripDropDownCloseReason.ItemClicked Then
e.Cancel = True
End If
End Sub
' This method handles the Click event for the button.
' it selects the first item in the ToolStrip control
' by using the ToolStripITem.Select method.
Private Sub button1_Click(sender As Object, e As EventArgs) Handles button1.Click
Dim item As RolloverItem = CType(Me.toolStrip1.Items(0), RolloverItem)
If (item IsNot Nothing) Then
item.Select()
Me.Invalidate()
End If
End Sub
' This utility method creates a RolloverItem
' and adds it to a ToolStrip control.
Private Function CreateRolloverItem( _
ByVal owningToolStrip As ToolStrip, _
ByVal txt As String, _
ByVal f As Font, _
ByVal imgKey As String, _
ByVal tir As TextImageRelation, _
ByVal backImgKey As String) As RolloverItem
Dim item As New RolloverItem()
item.Alignment = ToolStripItemAlignment.Left
item.AllowDrop = False
item.AutoSize = True
item.BackgroundImage = owningToolStrip.ImageList.Images(backImgKey)
item.BackgroundImageLayout = ImageLayout.Center
item.DisplayStyle = ToolStripItemDisplayStyle.ImageAndText
item.DoubleClickEnabled = True
item.Enabled = True
item.Font = f
' These assignments are equivalent. Each assigns an
' image from the owning toolstrip's image list.
item.ImageKey = imgKey
'item.Image = owningToolStrip.ImageList.Images[infoIconKey];
'item.ImageIndex = owningToolStrip.ImageList.Images.IndexOfKey(infoIconKey);
item.ImageScaling = ToolStripItemImageScaling.None
item.Owner = owningToolStrip
item.Padding = New Padding(2)
item.Text = txt
item.TextAlign = ContentAlignment.MiddleLeft
item.TextDirection = ToolStripTextDirection.Horizontal
item.TextImageRelation = tir
Return item
End Function
Protected Overrides Sub Dispose(disposing As Boolean)
If disposing AndAlso (components IsNot Nothing) Then
components.Dispose()
End If
MyBase.Dispose(disposing)
End Sub
#Region "Windows Form Designer generated code"
Private Sub InitializeComponent()
Me.toolStrip1 = New System.Windows.Forms.ToolStrip()
Me.button1 = New System.Windows.Forms.Button()
Me.SuspendLayout()
'
' toolStrip1
'
Me.toolStrip1.AllowItemReorder = True
Me.toolStrip1.Location = New System.Drawing.Point(0, 0)
Me.toolStrip1.Name = "toolStrip1"
Me.toolStrip1.Size = New System.Drawing.Size(845, 25)
Me.toolStrip1.TabIndex = 0
Me.toolStrip1.Text = "toolStrip1"
'
' button1
'
Me.button1.Location = New System.Drawing.Point(12, 100)
Me.button1.Name = "button1"
Me.button1.Size = New System.Drawing.Size(86, 23)
Me.button1.TabIndex = 1
Me.button1.Text = "Click to select"
Me.button1.UseVisualStyleBackColor = True
'
' RolloverItemTestForm
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6F, 14F)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.AutoSize = True
Me.ClientSize = New System.Drawing.Size(845, 282)
Me.Controls.Add(button1)
Me.Controls.Add(toolStrip1)
Me.Font = New System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, 0)
Me.Name = "RolloverItemTestForm"
Me.Text = "Form1"
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
#End Region
End Class
Public Class Program
<STAThread()> _
Shared Sub Main()
Application.EnableVisualStyles()
Application.SetCompatibleTextRenderingDefault(False)
Application.Run(New RolloverItemTestForm())
End Sub
End Class
Комментарии
— ToolStripItem это элемент, такой как кнопка, поле со списком, текстовое поле или метка, которые могут содержаться в элементе ToolStrip управления или элементе ToolStripDropDown управления, аналогично контекстном меню Windows. Класс ToolStrip управляет рисованием, вводом с клавиатуры и мыши, включая ввод перетаскивания, для этих элементов, а ToolStripItem класс управляет событиями и макетом в самих элементах.
Классы ToolStripItem наследуются либо напрямую от ToolStripItem, либо косвенно от ToolStripItem через ToolStripControlHost или ToolStripDropDownItem.
Элементы управления ToolStripItem должны содержаться в ToolStrip, MenuStrip, StatusStrip или ContextMenuStrip, и их нельзя добавить непосредственно в форму. Различные классы контейнеров предназначены для хранения соответствующего подмножества элементов управления ToolStripItem.
ПримечаниеToolStripItem Данный объект не может иметь более одного родительского объекта ToolStrip. Необходимо скопировать ToolStripItem и добавить его в другие ToolStrip элементы управления.
В следующей таблице показаны элементы, которые являются производными от ToolStripItem класса и, следовательно, могут размещаться в ToolStrip или ToolStripDropDown.
Элемент | Описание |
---|---|
ToolStripButton | Кнопка панели инструментов, поддерживающая изображения и текст. |
ToolStripLabel | Текстовая метка, обычно используемая в строке состояния или ToolStrip в качестве комментария или заголовка. |
ToolStripSeparator | Неизбираемое пространство или пространство с вертикальной полосой, визуально группируемой элементами. |
ToolStripControlHost | Объект ToolStripItem , в котором размещаются ToolStripComboBoxэлементы управления , ToolStripTextBox, ToolStripProgressBar, , другие элементы управления Windows Forms или пользовательские элементы управления. — ToolStripComboBox это текстовое поле, в которое пользователь может ввести текст, а также список, из которого пользователь может выбрать текст для заполнения текстового поля. Позволяет ToolStripTextBox пользователю ввести текст. Представляет ToolStripProgressBar элемент управления индикатора выполнения Windows, содержащийся в StatusStrip. |
ToolStripDropDownItem | Объект ToolStripItem , в котором размещаются ToolStripMenuItem, ToolStripSplitButtonи ToolStripDropDownButton. — ToolStripMenuItem это доступный для выбора параметр, отображаемый в меню или контекстном меню. — ToolStripSplitButton это сочетание обычной кнопки и кнопки раскрывающегося списка. — ToolStripDropDownButton это кнопка, поддерживающая функции раскрывающегося списка. |
ToolStripStatusLabel | Панель в элементе StatusStrip управления. |
Конструкторы
ToolStripItem() |
Инициализирует новый экземпляр класса ToolStripItem. |
ToolStripItem(String, Image, EventHandler) |
Инициализирует новый экземпляр класса ToolStripItem с указанным именем, заданным изображением и обработчиком событий. |
ToolStripItem(String, Image, EventHandler, String) |
Инициализирует новый экземпляр класса ToolStripItemс указанным отображаемым текстом, заданным изображением, обработчиком событий и именем. |
Свойства
AccessibilityObject |
Получает объект AccessibleObject, назначенный элементу управления. |
AccessibleDefaultActionDescription |
Возвращает или задает описание выполняемого по умолчанию действия элемента управления для использования клиентскими приложениями со специальными возможностями. |
AccessibleDescription |
Возвращает или задает описание, которое будет сообщено клиентским приложениям со специальными возможностями. |
AccessibleName |
Возвращает или задает имя элемента управления, используемого клиентскими приложениями со специальными возможностями. |
AccessibleRole |
Возвращает или задает роль элемента управления в поддержке специальных возможностей, которая указывает тип элемента пользовательского интерфейса для данного элемента управления. |
Alignment |
Получает или задает значение, указывающее, выравнивается ли элемент по началу или по концу элемента ToolStrip. |
AllowDrop |
Возвращает или задает значение, указывающее, будут ли операции перетаскивания и переупорядочения элементов обрабатываться с помощью событий, реализованных пользователем. |
Anchor |
Возвращает или задает границы контейнера, с которым связан объект ToolStripItem, и определяет, как изменяются размеры объекта ToolStripItem вместе с родительским объектом. |
AutoSize |
Возвращает или задает значение, указывающее, производится ли автоматическое изменение размеров элемента. |
AutoToolTip |
Получает или задает значение, указывающее, следует ли использовать свойство Text или свойство ToolTipText для подсказки ToolStripItem. |
Available |
Получает или задает значение, указывающее, нужно ли помещать ToolStripItem в ToolStrip. |
BackColor |
Возвращает или задает цвет фона для элемента. |
BackgroundImage |
Возвращает или задает фоновое изображение, отображаемое на элементе. |
BackgroundImageLayout |
Получает или задает фоновое изображение, используемое для ToolStripItem. |
BindingContext |
Получает или задает коллекцию диспетчеров денежных единиц для объекта IBindableComponent. (Унаследовано от BindableComponent) |
Bounds |
Возвращает размер и расположение элемента. |
CanRaiseEvents |
Возвращает значение, показывающее, может ли компонент вызывать событие. (Унаследовано от Component) |
CanSelect |
Возвращает значение, указывающее, доступен ли элемент для выбора. |
Command |
Возвращает или задает объект , ICommand метод которого Execute(Object) будет вызываться при вызове события ToolStripItem Click . |
CommandParameter |
Возвращает или задает параметр, передаваемый в ICommand объект , назначенный свойству Command . |
Container |
Возвращает объект IContainer, который содержит коллекцию Component. (Унаследовано от Component) |
ContentRectangle |
Получает область, в которой содержимое, например текст и значки, могут быть помещены в ToolStripItem без перезаписи границ фона. |
DataBindings |
Получает коллекцию объектов привязки к данным для этого компонента IBindableComponent. (Унаследовано от BindableComponent) |
DefaultAutoToolTip |
Получает значение, указывающее, должен ли отображаться объект ToolTip, который определен по умолчанию. |
DefaultDisplayStyle |
Получает значение, указывающее, что отображается в ToolStripItem. |
DefaultMargin |
Возвращает поле по умолчанию для элемента. |
DefaultPadding |
Возвращает параметры внутренних интервалов элемента. |
DefaultSize |
Возвращает размер элемента по умолчанию. |
DesignMode |
Возвращает значение, указывающее, находится ли данный компонент Component в режиме конструктора в настоящее время. (Унаследовано от Component) |
DismissWhenClicked |
Получает значение, указывающее, скрываются ли элементы на объекте ToolStripDropDown после того как их щелкнули. |
DisplayStyle |
Получает или задает значение, указывающее, отображаются ли текст и изображения на ToolStripItem. |
Dock |
Возвращает или задает границы объекта ToolStripItem, которые прикрепляются к его родительскому элементу управления, и определяет способ изменения размеров объекта ToolStripItem при изменении размеров его родительского элемента управления. |
DoubleClickEnabled |
Получает или задает значение, которое указывает, возможна активация ToolStripItem двойным щелчком мыши. |
Enabled |
Получает или задает значение показывающее, активизирован ли родительский элемент управления для объекта ToolStripItem. |
Events |
Возвращает список обработчиков событий, которые прикреплены к этому объекту Component. (Унаследовано от Component) |
Font |
Возвращает или задает шрифт текста, отображаемого данным элементом. |
ForeColor |
Возвращает или задает цвет элемента. |
Height |
Получает или задает высоту объекта ToolStripItem в пикселях. |
Image |
Возвращает или задает изображение, отображаемое в свойстве ToolStripItem. |
ImageAlign |
Получает или задает выравнивание изображения в элементе управления ToolStripItem. |
ImageIndex |
Возвращает или задает значение индекса изображения, отображаемого на данном элементе. |
ImageKey |
Получает или задает средство доступа к ключу для изображения в ImageList, отображаемого в элементе ToolStripItem. |
ImageScaling |
Получает или задает значение, показывающее, изменяется ли автоматически размер изображения на ToolStripItem для соответствия размерам контейнера. |
ImageTransparentColor |
Получает или задает цвет, обрабатываемый как прозрачный в изображении ToolStripItem. |
IsDisposed |
Возвращает значение, указывающее, был ли удален объект. |
IsOnDropDown |
Получает значение, определяющее, является ли контейнер текущего Control элементом ToolStripDropDown. |
IsOnOverflow |
Получает значение, указывающее, установлено ли для свойства Placement значение Overflow. |
Margin |
Возвращает или задает расстояние между элементом и соседними элементами. |
MergeAction |
Получает или задает способ слияния дочерних меню с родительскими меню. |
MergeIndex |
Получает или задает положение элемента при слиянии в текущем ToolStrip. |
Name |
Возвращает или задает имя элемента. |
Overflow |
Получает или задает значение, указывающее, присоединен ли элемент к элементу ToolStrip или ToolStripOverflowButton или он может перемещаться между ними. |
Owner |
Возвращает или задает владельца данного элемента. |
OwnerItem |
Возвращает родительский объект ToolStripItem этого объекта ToolStripItem. |
Padding |
Возвращает или задает внутренний интервал в пикселях между краями элемента и его содержимым. |
Parent |
Получает или задает родительский контейнер ToolStripItem. |
Placement |
Возвращает текущую структуру элемента. |
Pressed |
Получает значение, показывающее, нажат ли элемент. |
Renderer |
Представляет абстрактный базовый класс, который управляет событиями и структурой всех элементов, которые могут содержаться в элементах управления ToolStrip или ToolStripDropDown. |
RightToLeft |
Возвращает или задает значение, указывающее, должны ли элементы располагаться справа налево и должен ли текст быть написан справа налево. |
RightToLeftAutoMirrorImage |
Автоматически зеркально отражает изображение ToolStripItem, когда для свойства RightToLeft задано значение Yes. |
Selected |
Возвращает значение, указывающее, выбран ли элемент. |
ShowKeyboardCues |
Возвращает значение, определяющее, должны сочетания клавиш отображаться или нет. |
Site |
Получает или задает ISite объекта Component. (Унаследовано от Component) |
Size |
Возвращает или задает размер элемента. |
Tag |
Возвращает или задает объект, который содержит данные об элементе. |
Text |
Возвращает или задает текст, отображаемый на элементе. |
TextAlign |
Получает или задает выравнивание текста в элементе ToolStripLabel. |
TextDirection |
Получает ориентацию текста, используемого наToolStripItem. |
TextImageRelation |
Получает или задает положение текста и изображения ToolStripItem относительно друг друга. |
ToolTipText |
Получает или задает текст, который появляется как ToolTip для элемента управления. |
Visible |
Возвращает или задает значение, указывающее, отображается ли элемент. |
Width |
Получает или задает ширину объекта ToolStripItem в пикселях. |
Методы
CreateAccessibilityInstance() |
Создает новый объект специальных возможностей для объекта ToolStripItem. |
CreateObjRef(Type) |
Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом. (Унаследовано от MarshalByRefObject) |
Dispose() |
Освобождает все ресурсы, занятые модулем Component. (Унаследовано от Component) |
Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые объектом ToolStripItem, а при необходимости освобождает также управляемые ресурсы. |
DoDragDrop(Object, DragDropEffects) |
Начинает операцию перетаскивания. |
DoDragDrop(Object, DragDropEffects, Bitmap, Point, Boolean) |
Начинает операцию перетаскивания. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetCurrentParent() |
Извлекает ToolStrip, который является контейнером текущего ToolStripItem. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetLifetimeService() |
Устаревшие..
Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра. (Унаследовано от MarshalByRefObject) |
GetPreferredSize(Size) |
Возвращает размер прямоугольной области, в которой может поместиться элемент управления. |
GetService(Type) |
Возвращает объект, представляющий службу, предоставляемую классом Component или классом Container. (Унаследовано от Component) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
InitializeLifetimeService() |
Устаревшие..
Получает объект службы времени существования для управления политикой времени существования для этого экземпляра. (Унаследовано от MarshalByRefObject) |
Invalidate() |
Делает недействительной всю поверхность элемента ToolStripItemи вызывает его перерисовку. |
Invalidate(Rectangle) |
Делает недействительной указанную область элемента ToolStripItem путем добавления ее к области обновления элемента ToolStripItem, которая будет перерисована при следующей операции рисования, и вызывает отправку сообщения изображения элементу ToolStripItem. |
IsInputChar(Char) |
Определяет, является ли символ входным символом, который распознается элементом. |
IsInputKey(Keys) |
Определяет, является ли заданная клавиша обычной клавишей ввода или специальной клавишей, нуждающейся в предварительной обработке. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
MemberwiseClone(Boolean) |
Создает неполную копию текущего объекта MarshalByRefObject. (Унаследовано от MarshalByRefObject) |
OnAvailableChanged(EventArgs) |
Вызывает событие AvailableChanged. |
OnBackColorChanged(EventArgs) |
Вызывает событие BackColorChanged. |
OnBindingContextChanged(EventArgs) |
Вызывает событие BindingContextChanged. (Унаследовано от BindableComponent) |
OnBoundsChanged() |
Происходит при изменении свойства Bounds. |
OnClick(EventArgs) |
Вызывает событие Click. |
OnCommandCanExecuteChanged(EventArgs) |
Вызывает событие CommandCanExecuteChanged. |
OnCommandChanged(EventArgs) |
Вызывает событие CommandChanged. |
OnCommandParameterChanged(EventArgs) |
Вызывает событие CommandParameterChanged. |
OnDisplayStyleChanged(EventArgs) |
Вызывает событие DisplayStyleChanged. |
OnDoubleClick(EventArgs) |
Вызывает событие DoubleClick. |
OnDragDrop(DragEventArgs) |
Вызывает событие DragDrop. |
OnDragEnter(DragEventArgs) |
Вызывает событие DragEnter. |
OnDragLeave(EventArgs) |
Вызывает событие DragLeave. |
OnDragOver(DragEventArgs) |
Вызывает событие DragOver. |
OnEnabledChanged(EventArgs) |
Вызывает событие EnabledChanged. |
OnFontChanged(EventArgs) |
Вызывает событие FontChanged. |
OnForeColorChanged(EventArgs) |
Вызывает событие ForeColorChanged. |
OnGiveFeedback(GiveFeedbackEventArgs) |
Вызывает событие GiveFeedback. |
OnLayout(LayoutEventArgs) |
Вызывает событие Layout. |
OnLocationChanged(EventArgs) |
Вызывает событие LocationChanged. |
OnMouseDown(MouseEventArgs) |
Вызывает событие MouseDown. |
OnMouseEnter(EventArgs) |
Вызывает событие MouseEnter. |
OnMouseHover(EventArgs) |
Вызывает событие MouseHover. |
OnMouseLeave(EventArgs) |
Вызывает событие MouseLeave. |
OnMouseMove(MouseEventArgs) |
Вызывает событие MouseMove. |
OnMouseUp(MouseEventArgs) |
Вызывает событие MouseUp. |
OnOwnerChanged(EventArgs) |
Вызывает событие OwnerChanged. |
OnOwnerFontChanged(EventArgs) |
Вызывает событие FontChanged, когда изменяется свойство Font в родительском элементе элемента ToolStripItem. |
OnPaint(PaintEventArgs) |
Вызывает событие Paint. |
OnParentBackColorChanged(EventArgs) |
Вызывает событие BackColorChanged. |
OnParentChanged(ToolStrip, ToolStrip) |
Вызывает событие ParentChanged. |
OnParentEnabledChanged(EventArgs) |
Вызывает событие EnabledChanged при изменении значения свойства Enabled контейнера элемента. |
OnParentForeColorChanged(EventArgs) |
Вызывает событие ForeColorChanged. |
OnParentRightToLeftChanged(EventArgs) |
Вызывает событие RightToLeftChanged. |
OnQueryContinueDrag(QueryContinueDragEventArgs) |
Вызывает событие QueryContinueDrag. |
OnRequestCommandExecute(EventArgs) |
Вызывается в контексте для OnClick(EventArgs) вызова, Execute(Object) если контекст позволяет. |
OnRightToLeftChanged(EventArgs) |
Вызывает событие RightToLeftChanged. |
OnSelectedChanged(EventArgs) |
Представляет абстрактный базовый класс, который управляет событиями и структурой всех элементов, которые могут содержаться в элементах управления ToolStrip или ToolStripDropDown. |
OnTextChanged(EventArgs) |
Вызывает событие TextChanged. |
OnVisibleChanged(EventArgs) |
Вызывает событие VisibleChanged. |
PerformClick() |
Создает событие |
ProcessCmdKey(Message, Keys) |
Обрабатывает клавишу для команд. |
ProcessDialogKey(Keys) |
Обрабатывает клавишу диалогового окна. |
ProcessMnemonic(Char) |
Обрабатывает назначенный символ. |
ResetBackColor() |
Данный метод не применим к этому классу. |
ResetDisplayStyle() |
Данный метод не применим к этому классу. |
ResetFont() |
Данный метод не применим к этому классу. |
ResetForeColor() |
Данный метод не применим к этому классу. |
ResetImage() |
Данный метод не применим к этому классу. |
ResetMargin() |
Данный метод не применим к этому классу. |
ResetPadding() |
Данный метод не применим к этому классу. |
ResetRightToLeft() |
Данный метод не применим к этому классу. |
ResetTextDirection() |
Данный метод не применим к этому классу. |
Select() |
Выбирает элемент. |
SetBounds(Rectangle) |
Задает размер и расположение элемента. |
SetVisibleCore(Boolean) |
Устанавливает ToolStripItem в указанное видимое состояние. |
ToString() |
Возвращает объект String, содержащий имя Component, если оно есть. Этот метод не следует переопределять. |
События
AvailableChanged |
Происходит при изменении значения свойства Available. |
BackColorChanged |
Происходит при изменении значения свойства BackColor. |
BindingContextChanged |
Происходит при изменении контекста привязки. (Унаследовано от BindableComponent) |
Click |
Происходит при щелчке объекта ToolStripItem. |
CommandCanExecuteChanged |
Происходит при CanExecute(Object) изменении состояния объекта , ICommand назначенного свойству Command . |
CommandChanged |
Происходит при изменении назначенного ICommandCommand свойства. |
CommandParameterChanged |
Происходит в результате изменения значения свойства CommandParameter. |
DisplayStyleChanged |
Происходит, если изменилось свойство DisplayStyle. |
Disposed |
Возникает при удалении компонента путем вызова метода Dispose(). (Унаследовано от Component) |
DoubleClick |
Происходит при двойном щелчке элемента кнопкой мыши. |
DragDrop |
Происходит, когда пользователь перетаскивает элемент и отпускает кнопку мыши, указывая, что элемент должен быть перемещен в данный элемент. |
DragEnter |
Происходит, когда пользователь перетаскивает элемент в клиентскую область данного элемента. |
DragLeave |
Происходит, когда пользователь перетаскивает элемент и указатель мыши больше не находится в клиентской области данного элемента. |
DragOver |
Происходит, когда пользователь перетаскивает элемент в клиентскую область данного элемента. |
EnabledChanged |
Происходит, если значение свойства Enabled было изменено. |
ForeColorChanged |
Происходит при изменении значения свойства ForeColor. |
GiveFeedback |
Вызывается при выполнении операции перетаскивания. |
LocationChanged |
Происходит при обновлении местоположения элемента ToolStripItem. |
MouseDown |
Происходит при нажатии кнопки мыши, если указатель мыши находится на элементе. |
MouseEnter |
Происходит, когда указатель мыши оказывается на элементе. |
MouseHover |
Происходит, когда указатель мыши наведен на элемент. |
MouseLeave |
Происходит, когда указатель мыши покидает элемент. |
MouseMove |
Происходит при перемещении указателя мыши по элементу. |
MouseUp |
Происходит при отпускании кнопки мыши, если указатель мыши находится на элементе. |
OwnerChanged |
Происходит при изменении свойства Owner. |
Paint |
Происходит при перерисовке элемента. |
QueryAccessibilityHelp |
Происходит, когда приложение со специальными возможностями вызывает справку для ToolStripItem. |
QueryContinueDrag |
Происходит во время операции перетаскивания и позволяет источнику перетаскивания определить, следует ли отменить эту операцию. |
RightToLeftChanged |
Происходит при изменении значения свойства RightToLeft. |
SelectedChanged |
Представляет абстрактный базовый класс, который управляет событиями и структурой всех элементов, которые могут содержаться в элементах управления ToolStrip или ToolStripDropDown. |
TextChanged |
Происходит при изменении значения свойства Text. |
VisibleChanged |
Происходит при изменении значения свойства Visible. |
Явные реализации интерфейса
IDropTarget.OnDragDrop(DragEventArgs) |
Вызывает событие DragDrop. |
IDropTarget.OnDragEnter(DragEventArgs) |
Вызывает событие DragEnter. |
IDropTarget.OnDragLeave(EventArgs) |
Вызывает событие DragLeave. |
IDropTarget.OnDragOver(DragEventArgs) |
Вызывает событие |