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 в коллекции.