In WinForms use Button.Image
(MSDN) like this:
private void SetMyButtonIcon()
{
// Assign an image to the button.
button1.Image = Image.FromFile("C:\\Graphics\\My.ico");
// Align the image and text on the button.
button1.ImageAlign = ContentAlignment.MiddleRight;
button1.TextAlign = ContentAlignment.MiddleLeft;
}
and you can use Button.TextImageRelation
Property to set the position of text and image relative to each other:
Overlay
: image and text share the same space on a control.ImageBeforeText
: the image is displayed horizontally before the text of a control.TextBeforeImage
: the text is displayed horizontally before the image of a control.ImageAboveText
: the image is displayed vertically above the text of a control.TextAboveImage
: the text is displayed vertically above the image of a control.