alexy12
alexy12

Reputation: 535

Icon inside of button?

How do i add an icon like in the screenshot below inside of a button? I cannot seem to find how to do it.

https://i.sstatic.net/6HGcK.jpg

Upvotes: 34

Views: 84685

Answers (4)

Dozer789
Dozer789

Reputation: 2036

If you put the button on the form, you can right click on it and click properties and then go to "Image" and put in the image you want, them go to the bottom and click "TextImageRelation" and click the drop down menu then click "ImageBeforeText", you can make it however you want but i personally like image before text the best.

Hope this helps.

Upvotes: 11

marc wellman
marc wellman

Reputation: 5886

WPF (and Silverlight) is offering a control called Image. As the name implies it's a container which can hold an image inside. Use such a control to represent the icon you want and then place it inside your Button through its Content property

like here:

<Button x:Name="btn_ControlRun">
    <StackPanel Orientation="Horizontal">
        <Image Stretch="Fill" Source="right.png"/>
        <Label Content="Start Tasks" />
    </StackPanel>
</Button>

Upvotes: 3

Ria
Ria

Reputation: 10347

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.

Upvotes: 38

kmatyaszek
kmatyaszek

Reputation: 19296

Try this:

    <Button>
        <StackPanel Orientation="Horizontal">
            <Image Source="/Image/ok.png" />
            <TextBlock Text="Start Tasks" />
        </StackPanel>
    </Button>

Upvotes: 7

Related Questions