c#按钮上的图像和文本,居中在按钮中?

问题描述:

我在C#Windows窗体窗体上有一个按钮,并且想要显示一个图像和一些文本,并排显示,并居中显示在按钮上。我尝试将图像对齐左边,文本右边,我得到这个(期间是空格):c#按钮上的图像和文本,居中在按钮中?

| [IMAGE} ............ .....文|

但我想这一点:

| ........ [IMAGE]文本........ |

我的代码如下所示:

btnChangeStatus.Text = "Change status to SUPPRESSED"; 
btnChangeStatus.TextAlign = ContentAlignment.MiddleRight; 

btnChangeStatus.Image=Image.FromFile(@"J:\nomail.gif"); 
btnChangeStatus.ImageAlign = ContentAlignment.MiddleLeft; 

我已经在这里搜查,发现了大量的工具和Java或HTML,但没有为C#。有任何想法吗?

谢谢!

+1

这是winforms,ASP.NET,WPF还是什么?请澄清这一点,并显示您的代码。 –

+0

用该信息编辑。谢谢。 – John

+0

那么winforms呢?请适当地标记问题。习惯性地回答winforms问题的人会看winform标签。如果你的问题没有被标记为winforms,其中一些永远不会看到它。 –

设置TextImageRelationTextImageRelation.ImageBeforeText

btnChangeStatus.TextImageRelation = TextImageRelation.ImageBeforeText; 
btnChangeStatus.TextAlign = ContentAlignment.MiddleCenter;   
btnChangeStatus.ImageAlign = ContentAlignment.MiddleCenter; 

指定图像控件的文本前水平显示。


UPDATE:你是对的,尽管这听起来像这应该做你想做的,它仍然是一个小到左边。
我试着周围一点点,使用

btnChangeStatus.TextImageRelation = TextImageRelation.ImageBeforeText; 
btnChangeStatus.TextAlign = ContentAlignment.MiddleRight; // <- right here 
btnChangeStatus.ImageAlign = ContentAlignment.MiddleCenter; 

导致期望的结果,但我不知道为什么按钮的行为就像这一点。

+0

这让我更加接近,但图像/文字仍然偏左。 – John

+0

@John你是对的,更新我的答案与我的作品,虽然我不知道这个奇怪的行为的原因 –