ToolStripItem.ImageKey Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets the key accessor for the image in the ImageList that is displayed on a ToolStripItem.
public:
property System::String ^ ImageKey { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.Browsable(false)]
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.ImageKeyConverter))]
[System.Windows.Forms.RelatedImageList("Owner.ImageList")]
public string ImageKey { get; set; }
[<System.ComponentModel.Browsable(false)>]
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.ImageKeyConverter))>]
[<System.Windows.Forms.RelatedImageList("Owner.ImageList")>]
member this.ImageKey : string with get, set
Public Property ImageKey As String
Property Value
A string representing the key of the image.
- Attributes
Examples
The following code example demonstrates how to set the ImageKey property. This code example is part of a larger example provided for the ToolStripItem class.
// 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;
}
' 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
Remarks
ImageKey and ImageIndex are mutually exclusive, meaning if one is set, the other is set to an invalid value and ignored. If you set the ImageKey property, the ImageIndex property is automatically set to -1. Alternatively, if you set the ImageIndex property, the ImageKey is automatically set to an empty string ("").
The Image, ImageAlign, ImageIndex, ImageKey, and ImageScaling properties pertain to various aspects of image handling. Use images in ToolStrip controls by setting these properties directly or by setting the run-time-only ImageList property.
Image scaling is determined by the interaction of properties in both ToolStrip and ToolStripItem, as follows:
ImageScalingSize is the scale of the final image as determined by the combination of the image's ImageScaling setting and the container's AutoSize setting.
If AutoSize is
true
(the default) and ToolStripItemImageScaling is SizeToFit, no image scaling occurs, and the ToolStrip size is that of the largest item, or a prescribed minimum size.If AutoSize is
false
and ToolStripItemImageScaling is None, neither image nor ToolStrip scaling occurs.