Поделиться через


ToolStripItem.Owner Свойство

Определение

Возвращает или задает владельца этого элемента.

public:
 property System::Windows::Forms::ToolStrip ^ Owner { System::Windows::Forms::ToolStrip ^ get(); void set(System::Windows::Forms::ToolStrip ^ value); };
[System.ComponentModel.Browsable(false)]
public System.Windows.Forms.ToolStrip Owner { get; set; }
[System.ComponentModel.Browsable(false)]
public System.Windows.Forms.ToolStrip? Owner { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.Owner : System.Windows.Forms.ToolStrip with get, set
Public Property Owner As ToolStrip

Значение свойства

То ToolStrip , что владеет или принадлежит ToolStripItem.

Атрибуты

Примеры

В следующем примере кода показано, как использовать свойство для пользовательской Owner отрисовки. Этот пример кода является частью более крупного примера, предоставленного для ToolStripItem класса.

// 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 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

Комментарии

Owner возвращает коллекцию ToolStrip элементов, содержащая текущую ToolStripItem. Это лучший способ ссылаться ImageList на другие свойства верхнего уровня ToolStrip без написания специального кода для обработки переполнения.

Остается Owner неизменным, даже если элемент попадает в ToolStripOverflow. Это Owner может быть null для определенных элементов, которые находятся в DisplayedItems коллекции, но не в Items коллекции.

Применяется к