Bagikan melalui


ToolStripItem Kelas

Definisi

Mewakili kelas dasar abstrak yang mengelola peristiwa dan tata letak untuk semua elemen yang dapat dimuat ToolStrip atau 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
Warisan
Warisan
Turunan
Penerapan

Contoh

Contoh kode berikut menunjukkan cara menerapkan kontrol kustom 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

Keterangan

ToolStripItem adalah elemen seperti tombol, kotak kombo, kotak teks, atau label yang dapat dimuat dalam ToolStrip kontrol atau ToolStripDropDown kontrol, yang mirip dengan menu pintasan Windows. Kelas ToolStrip mengelola lukisan dan input keyboard dan mouse, termasuk input seret dan letakkan, untuk elemen-elemen ini, dan ToolStripItem kelas mengelola peristiwa dan tata letak dalam elemen itu sendiri.

ToolStripItem kelas baik mewarisi langsung dari ToolStripItem, atau mereka mewarisi secara tidak langsung dari ToolStripItem melalui ToolStripControlHost atau ToolStripDropDownItem.

ToolStripItemkontrol harus dimuat dalam ToolStrip, , MenuStripStatusStrip, atau ContextMenuStrip dan tidak dapat ditambahkan langsung ke formulir. Berbagai kelas kontainer dirancang untuk berisi subset ToolStripItem kontrol yang sesuai.

Catatan Yang diberikan ToolStripItem tidak boleh memiliki lebih dari satu induk ToolStrip. Anda harus menyalin ToolStripItem dan menambahkannya ke kontrol lain ToolStrip .

Tabel berikut menunjukkan elemen yang berasal dari ToolStripItem kelas dan yang oleh karena itu dapat dihosting di ToolStrip atau ToolStripDropDown.

Elemen Deskripsi
ToolStripButton Tombol toolbar yang mendukung gambar dan teks.
ToolStripLabel Label teks biasanya digunakan di bilah status atau ToolStrip sebagai komentar atau judul.
ToolStripSeparator Spasi atau spasi yang tidak dapat dipilih dengan bilah vertikal yang secara visual mengelompokkan elemen.
ToolStripControlHost ToolStripItem yang menghosting ToolStripComboBoxkontrol , ToolStripTextBox, ToolStripProgressBar, Formulir Windows lainnya, atau kontrol kustom.

ToolStripComboBox adalah kotak teks tempat pengguna dapat memasukkan teks, bersama dengan daftar tempat pengguna dapat memilih teks untuk mengisi kotak teks.

A ToolStripTextBox memungkinkan pengguna untuk memasukkan teks.

ToolStripProgressBar mewakili kontrol bilah kemajuan Windows yang terkandung dalam StatusStrip.
ToolStripDropDownItem Yang ToolStripItem menghosting ToolStripMenuItem, , ToolStripSplitButtondan ToolStripDropDownButton.

ToolStripMenuItem adalah opsi yang dapat dipilih yang ditampilkan pada menu atau menu konteks.

ToolStripSplitButton adalah kombinasi dari tombol biasa dan tombol drop-down.

ToolStripDropDownButton adalah tombol yang mendukung fungsi drop-down.
ToolStripStatusLabel Panel dalam StatusStrip kontrol.

Konstruktor

ToolStripItem()

Menginisialisasi instans baru kelas ToolStripItem.

ToolStripItem(String, Image, EventHandler)

Menginisialisasi instans ToolStripItem baru kelas dengan nama, gambar, dan penanganan aktivitas yang ditentukan.

ToolStripItem(String, Image, EventHandler, String)

Menginisialisasi instans ToolStripItem baru kelas dengan teks tampilan, gambar, penanganan aktivitas, dan nama yang ditentukan.

Properti

AccessibilityObject

Mendapatkan yang AccessibleObject ditetapkan ke kontrol.

AccessibleDefaultActionDescription

Mendapatkan atau mengatur deskripsi tindakan default kontrol untuk digunakan oleh aplikasi klien aksesibilitas.

AccessibleDescription

Mendapatkan atau mengatur deskripsi yang akan dilaporkan ke aplikasi klien aksesibilitas.

AccessibleName

Mendapatkan atau mengatur nama kontrol untuk digunakan oleh aplikasi klien aksesibilitas.

AccessibleRole

Mendapatkan atau mengatur peran kontrol yang dapat diakses, yang menentukan jenis elemen antarmuka pengguna kontrol.

Alignment

Mendapatkan atau menetapkan nilai yang menunjukkan apakah item selaras terhadap awal atau akhir ToolStrip.

AllowDrop

Mendapatkan atau menetapkan nilai yang menunjukkan apakah pengurutan ulang seret dan letakkan dan item ditangani melalui peristiwa yang Anda terapkan.

Anchor

Mendapatkan atau mengatur tepi kontainer yang ToolStripItem terikat dan menentukan bagaimana diubah ToolStripItem ukurannya dengan induknya.

AutoSize

Mendapatkan atau menetapkan nilai yang menunjukkan apakah item berukuran otomatis.

AutoToolTip

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan menggunakan Text properti atau ToolTipText properti untuk TipsAlat ToolStripItem .

Available

Mendapatkan atau menetapkan nilai yang menunjukkan apakah ToolStripItem harus ditempatkan pada ToolStrip.

BackColor

Mendapatkan atau mengatur warna latar belakang untuk item.

BackgroundImage

Mendapatkan atau mengatur gambar latar belakang yang ditampilkan dalam item.

BackgroundImageLayout

Mendapatkan atau mengatur tata letak gambar latar belakang yang digunakan untuk ToolStripItem.

BindingContext

Mendapatkan atau mengatur pengumpulan manajer mata uang untuk IBindableComponent.

(Diperoleh dari BindableComponent)
Bounds

Mendapatkan ukuran dan lokasi item.

CanRaiseEvents

Mendapatkan nilai yang menunjukkan apakah komponen dapat menaikkan peristiwa.

(Diperoleh dari Component)
CanSelect

Mendapatkan nilai yang menunjukkan apakah item dapat dipilih.

Command

Mendapatkan atau mengatur ICommand metode yang Execute(Object) akan dipanggil ketika peristiwa ToolStripItem Click dipanggil.

CommandParameter

Mendapatkan atau mengatur parameter yang diteruskan ke ICommand yang ditetapkan ke Command properti .

Container

IContainer Mendapatkan yang berisi Component.

(Diperoleh dari Component)
ContentRectangle

Mendapatkan area di mana konten, seperti teks dan ikon, dapat ditempatkan di dalam ToolStripItem tanpa menimpa batas latar belakang.

DataBindings

Mendapatkan pengumpulan objek pengikatan data untuk ini IBindableComponent.

(Diperoleh dari BindableComponent)
DefaultAutoToolTip

Mendapatkan nilai yang menunjukkan apakah akan menampilkan ToolTip yang didefinisikan sebagai default.

DefaultDisplayStyle

Mendapatkan nilai yang menunjukkan apa yang ditampilkan pada ToolStripItem.

DefaultMargin

Mendapatkan margin default item.

DefaultPadding

Mendapatkan karakteristik penspasian internal item.

DefaultSize

Mendapatkan ukuran default item.

DesignMode

Mendapatkan nilai yang menunjukkan apakah Component saat ini dalam mode desain.

(Diperoleh dari Component)
DismissWhenClicked

Mendapatkan nilai yang menunjukkan apakah item disembunyikan ToolStripDropDown setelah diklik.

DisplayStyle

Mendapatkan atau mengatur apakah teks dan gambar ditampilkan di ToolStripItem.

Dock

Mendapatkan atau mengatur batas mana yang ToolStripItem ditampung ke kontrol induknya dan menentukan bagaimana perubahan ToolStripItem ukuran dengan induknya.

DoubleClickEnabled

Mendapatkan atau menetapkan nilai yang menunjukkan apakah ToolStripItem dapat diaktifkan dengan mengklik dua kali mouse.

Enabled

Mendapatkan atau menetapkan nilai yang menunjukkan apakah kontrol ToolStripItem induk diaktifkan.

Events

Mendapatkan daftar penanganan aktivitas yang dilampirkan ke ini Component.

(Diperoleh dari Component)
Font

Mendapatkan atau mengatur font teks yang ditampilkan oleh item.

ForeColor

Mendapatkan atau mengatur warna latar depan item.

Height

Mendapatkan atau mengatur tinggi, dalam piksel, dari ToolStripItem.

Image

Mendapatkan atau mengatur gambar yang ditampilkan pada ToolStripItem.

ImageAlign

Mendapatkan atau mengatur perataan gambar pada ToolStripItem.

ImageIndex

Mendapatkan atau mengatur nilai indeks gambar yang ditampilkan pada item.

ImageKey

Mendapatkan atau mengatur aksesor kunci untuk gambar dalam ImageList yang ditampilkan pada ToolStripItem.

ImageScaling

Mendapatkan atau menetapkan nilai yang menunjukkan apakah gambar pada ToolStripItem diubah ukurannya secara otomatis agar pas dalam kontainer.

ImageTransparentColor

Mendapatkan atau mengatur warna untuk diperlakukan sebagai transparan dalam gambar ToolStripItem .

IsDisposed

Mendapatkan nilai yang menunjukkan apakah objek telah dibuang.

IsOnDropDown

Mendapatkan nilai yang menunjukkan apakah kontainer saat ini Control adalah ToolStripDropDown.

IsOnOverflow

Mendapatkan nilai yang menunjukkan apakah Placement properti diatur ke Overflow.

Margin

Mendapatkan atau mengatur spasi antara item dan item yang berdingin.

MergeAction

Mendapatkan atau mengatur bagaimana menu anak digabungkan dengan menu induk.

MergeIndex

Mendapatkan atau mengatur posisi item gabungan dalam saat ini ToolStrip.

Name

Mendapatkan atau mengatur nama item.

Overflow

Mendapatkan atau mengatur apakah item dilampirkan ke ToolStrip atau ToolStripOverflowButton atau dapat mengambang di antara keduanya.

Owner

Mendapatkan atau menyetel pemilik item ini.

OwnerItem

Mendapatkan induk ToolStripItem dari ini ToolStripItem.

Padding

Mendapatkan atau mengatur spasi internal, dalam piksel, antara konten item dan tepinya.

Parent

Mendapatkan atau mengatur kontainer induk dari ToolStripItem.

Placement

Mendapatkan tata letak item saat ini.

Pressed

Mendapatkan nilai yang menunjukkan apakah status item ditekan.

Renderer

Mewakili kelas dasar abstrak yang mengelola peristiwa dan tata letak untuk semua elemen yang dapat dimuat ToolStrip atau ToolStripDropDown .

RightToLeft

Mendapatkan atau menetapkan nilai yang menunjukkan apakah item akan ditempatkan dari kanan ke kiri dan teks akan ditulis dari kanan ke kiri.

RightToLeftAutoMirrorImage

Mencerminkan ToolStripItem gambar secara otomatis saat RightToLeft properti diatur ke Yes.

Selected

Mendapatkan nilai yang menunjukkan apakah item dipilih.

ShowKeyboardCues

Mendapatkan nilai yang menunjukkan apakah akan menampilkan atau menyembunyikan kunci pintasan.

Site

Mendapatkan atau mengatur ISite dari Component.

(Diperoleh dari Component)
Size

Mendapatkan atau mengatur ukuran item.

Tag

Mendapatkan atau mengatur objek yang berisi data tentang item.

Text

Mendapatkan atau mengatur teks yang akan ditampilkan pada item.

TextAlign

Mendapatkan atau mengatur perataan teks pada ToolStripLabel.

TextDirection

Mendapatkan orientasi teks yang digunakan pada ToolStripItem.

TextImageRelation

Mendapatkan atau mengatur posisi ToolStripItem teks dan gambar relatif satu sama lain.

ToolTipText

Mendapatkan atau mengatur teks yang muncul sebagai ToolTip untuk kontrol.

Visible

Mendapatkan atau mengatur nilai yang menunjukkan apakah item ditampilkan.

Width

Mendapatkan atau mengatur lebar dalam piksel dari ToolStripItem.

Metode

CreateAccessibilityInstance()

Membuat objek aksesibilitas baru untuk ToolStripItem.

CreateObjRef(Type)

Membuat objek yang berisi semua informasi relevan yang diperlukan untuk menghasilkan proksi yang digunakan untuk berkomunikasi dengan objek jarak jauh.

(Diperoleh dari MarshalByRefObject)
Dispose()

Merilis semua sumber daya yang Componentdigunakan oleh .

(Diperoleh dari Component)
Dispose(Boolean)

Merilis sumber daya tidak terkelola yang ToolStripItem digunakan oleh dan secara opsional merilis sumber daya terkelola.

DoDragDrop(Object, DragDropEffects)

Memulai operasi seret dan letakkan.

DoDragDrop(Object, DragDropEffects, Bitmap, Point, Boolean)

Memulai operasi seret.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetCurrentParent()

ToolStrip Mengambil yang merupakan kontainer dari saat iniToolStripItem.

GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetLifetimeService()
Kedaluwarsa.

Mengambil objek layanan seumur hidup saat ini yang mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
GetPreferredSize(Size)

Mengambil ukuran area persegi panjang di mana kontrol dapat pas.

GetService(Type)

Mengembalikan objek yang mewakili layanan yang disediakan oleh Component atau oleh Container.

(Diperoleh dari Component)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
InitializeLifetimeService()
Kedaluwarsa.

Mendapatkan objek layanan seumur hidup untuk mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
Invalidate()

Membatalkan seluruh permukaan ToolStripItem dan menyebabkannya digambar ulang.

Invalidate(Rectangle)

Membatalkan wilayah yang ditentukan dengan ToolStripItem menambahkannya ke wilayah ToolStripItempembaruan , yang merupakan area yang akan dicat ulang pada operasi cat berikutnya, dan menyebabkan pesan cat dikirim ke ToolStripItem.

IsInputChar(Char)

Menentukan apakah karakter adalah karakter input yang dikenali item.

IsInputKey(Keys)

Menentukan apakah kunci yang ditentukan adalah kunci input reguler atau kunci khusus yang memerlukan pra-pemrosesan.

MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
MemberwiseClone(Boolean)

Membuat salinan dangkal objek saat ini MarshalByRefObject .

(Diperoleh dari MarshalByRefObject)
OnAvailableChanged(EventArgs)

Menaikkan peristiwa AvailableChanged.

OnBackColorChanged(EventArgs)

Memunculkan kejadian BackColorChanged.

OnBindingContextChanged(EventArgs)

Memunculkan kejadian BindingContextChanged.

(Diperoleh dari BindableComponent)
OnBoundsChanged()

Terjadi saat Bounds properti berubah.

OnClick(EventArgs)

Memunculkan kejadian Click.

OnCommandCanExecuteChanged(EventArgs)

Memunculkan kejadian CommandCanExecuteChanged.

OnCommandChanged(EventArgs)

Memunculkan kejadian CommandChanged.

OnCommandParameterChanged(EventArgs)

Memunculkan kejadian CommandParameterChanged.

OnDisplayStyleChanged(EventArgs)

Memunculkan kejadian DisplayStyleChanged.

OnDoubleClick(EventArgs)

Memunculkan kejadian DoubleClick.

OnDragDrop(DragEventArgs)

Memunculkan kejadian DragDrop.

OnDragEnter(DragEventArgs)

Memunculkan kejadian DragEnter.

OnDragLeave(EventArgs)

Memunculkan kejadian DragLeave.

OnDragOver(DragEventArgs)

Memunculkan kejadian DragOver.

OnEnabledChanged(EventArgs)

Memunculkan kejadian EnabledChanged.

OnFontChanged(EventArgs)

Memunculkan kejadian FontChanged.

OnForeColorChanged(EventArgs)

Memunculkan kejadian ForeColorChanged.

OnGiveFeedback(GiveFeedbackEventArgs)

Memunculkan kejadian GiveFeedback.

OnLayout(LayoutEventArgs)

Memunculkan kejadian Layout.

OnLocationChanged(EventArgs)

Memunculkan kejadian LocationChanged.

OnMouseDown(MouseEventArgs)

Memunculkan kejadian MouseDown.

OnMouseEnter(EventArgs)

Memunculkan kejadian MouseEnter.

OnMouseHover(EventArgs)

Memunculkan kejadian MouseHover.

OnMouseLeave(EventArgs)

Memunculkan kejadian MouseLeave.

OnMouseMove(MouseEventArgs)

Memunculkan kejadian MouseMove.

OnMouseUp(MouseEventArgs)

Memunculkan kejadian MouseUp.

OnOwnerChanged(EventArgs)

Memunculkan kejadian OwnerChanged.

OnOwnerFontChanged(EventArgs)

Menaikkan FontChanged peristiwa ketika Font properti telah berubah pada induk .ToolStripItem

OnPaint(PaintEventArgs)

Memunculkan kejadian Paint.

OnParentBackColorChanged(EventArgs)

Memunculkan kejadian BackColorChanged.

OnParentChanged(ToolStrip, ToolStrip)

Memunculkan kejadian ParentChanged.

OnParentEnabledChanged(EventArgs)

EnabledChanged Menaikkan peristiwa saat Enabled nilai properti kontainer item berubah.

OnParentForeColorChanged(EventArgs)

Memunculkan kejadian ForeColorChanged.

OnParentRightToLeftChanged(EventArgs)

Memunculkan kejadian RightToLeftChanged.

OnQueryContinueDrag(QueryContinueDragEventArgs)

Memunculkan kejadian QueryContinueDrag.

OnRequestCommandExecute(EventArgs)

Dipanggil dalam konteks OnClick(EventArgs) untuk memanggil Execute(Object) jika konteks memungkinkan.

OnRightToLeftChanged(EventArgs)

Memunculkan kejadian RightToLeftChanged.

OnSelectedChanged(EventArgs)

Mewakili kelas dasar abstrak yang mengelola peristiwa dan tata letak untuk semua elemen yang dapat dimuat ToolStrip atau ToolStripDropDown .

OnTextChanged(EventArgs)

Memunculkan kejadian TextChanged.

OnVisibleChanged(EventArgs)

Memunculkan kejadian VisibleChanged.

PerformClick()

Click Menghasilkan peristiwa untuk ToolStripItem.

ProcessCmdKey(Message, Keys)

Memproses kunci perintah.

ProcessDialogKey(Keys)

Memproses kunci dialog.

ProcessMnemonic(Char)

Memproses karakter mnemonic.

ResetBackColor()

Metode ini tidak relevan dengan kelas ini.

ResetDisplayStyle()

Metode ini tidak relevan dengan kelas ini.

ResetFont()

Metode ini tidak relevan dengan kelas ini.

ResetForeColor()

Metode ini tidak relevan dengan kelas ini.

ResetImage()

Metode ini tidak relevan dengan kelas ini.

ResetMargin()

Metode ini tidak relevan dengan kelas ini.

ResetPadding()

Metode ini tidak relevan dengan kelas ini.

ResetRightToLeft()

Metode ini tidak relevan dengan kelas ini.

ResetTextDirection()

Metode ini tidak relevan dengan kelas ini.

Select()

Memilih item.

SetBounds(Rectangle)

Mengatur ukuran dan lokasi item.

SetVisibleCore(Boolean)

Mengatur ke ToolStripItem status terlihat yang ditentukan.

ToString()

Mengembalikan yang String berisi nama Component, jika ada. Metode ini tidak boleh ditimpa.

Acara

AvailableChanged

Terjadi ketika nilai Available properti berubah.

BackColorChanged

Terjadi ketika nilai BackColor properti berubah.

BindingContextChanged

Terjadi ketika konteks pengikatan telah berubah.

(Diperoleh dari BindableComponent)
Click

Terjadi ketika diklik ToolStripItem .

CommandCanExecuteChanged

Terjadi ketika CanExecute(Object) status ICommand yang ditetapkan ke Command properti telah berubah.

CommandChanged

Terjadi ketika properti yang Command ditetapkan ICommand telah berubah.

CommandParameterChanged

Terjadi ketika nilai CommandParameter properti telah berubah.

DisplayStyleChanged

Terjadi ketika DisplayStyle telah berubah.

Disposed

Terjadi ketika komponen dibuang oleh panggilan ke Dispose() metode .

(Diperoleh dari Component)
DoubleClick

Terjadi ketika item diklik dua kali dengan mouse.

DragDrop

Terjadi ketika pengguna menyeret item dan pengguna melepaskan tombol mouse, menunjukkan bahwa item harus dijatuhkan ke item ini.

DragEnter

Terjadi ketika pengguna menyeret item ke area klien item ini.

DragLeave

Terjadi ketika pengguna menyeret item dan penunjuk mouse tidak lagi melewati area klien item ini.

DragOver

Terjadi ketika pengguna menyeret item ke area klien item ini.

EnabledChanged

Terjadi ketika Enabled nilai properti telah berubah.

ForeColorChanged

Terjadi ketika ForeColor nilai properti berubah.

GiveFeedback

Terjadi selama operasi seret.

LocationChanged

Terjadi ketika lokasi diperbarui ToolStripItem .

MouseDown

Terjadi ketika penunjuk mouse berada di atas item dan tombol mouse ditekan.

MouseEnter

Terjadi ketika penunjuk mouse memasuki item.

MouseHover

Terjadi ketika penunjuk mouse mengarah ke item.

MouseLeave

Terjadi ketika penunjuk mouse meninggalkan item.

MouseMove

Terjadi ketika penunjuk mouse dipindahkan ke atas item.

MouseUp

Terjadi ketika penunjuk mouse berada di atas item dan tombol mouse dilepaskan.

OwnerChanged

Terjadi saat Owner properti berubah.

Paint

Terjadi ketika item digambar ulang.

QueryAccessibilityHelp

Terjadi ketika aplikasi klien aksesibilitas memanggil bantuan untuk ToolStripItem.

QueryContinueDrag

Terjadi selama operasi seret dan letakkan dan memungkinkan sumber seret untuk menentukan apakah operasi seret dan letakkan harus dibatalkan.

RightToLeftChanged

Terjadi ketika RightToLeft nilai properti berubah.

SelectedChanged

Mewakili kelas dasar abstrak yang mengelola peristiwa dan tata letak untuk semua elemen yang dapat dimuat ToolStrip atau ToolStripDropDown .

TextChanged

Terjadi ketika nilai Text properti berubah.

VisibleChanged

Terjadi ketika nilai Visible properti berubah.

Implementasi Antarmuka Eksplisit

IDropTarget.OnDragDrop(DragEventArgs)

Memunculkan kejadian DragDrop.

IDropTarget.OnDragEnter(DragEventArgs)

Memunculkan kejadian DragEnter.

IDropTarget.OnDragLeave(EventArgs)

Memunculkan kejadian DragLeave.

IDropTarget.OnDragOver(DragEventArgs)

Memunculkan kejadian DragOver.

Berlaku untuk

Lihat juga