ToolStripItem.Selected 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取一个值,该值指示该项是否处于选定状态。
public:
virtual property bool Selected { bool get(); };
[System.ComponentModel.Browsable(false)]
public virtual bool Selected { get; }
[<System.ComponentModel.Browsable(false)>]
member this.Selected : bool
Public Overridable ReadOnly Property Selected As Boolean
属性值
如果已选定 ToolStripItem,则为 true
;否则为 false
。
- 属性
示例
下面的代码示例演示如何使用 Selected 属性进行自定义呈现。 此代码示例是为类提供的大型示例的 ToolStripItem 一部分。
// 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);
}
}
}
' 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