gpt4 book ai didi

c# - 左侧带有图像的标签 - 防止文本覆盖图片?

转载 作者:可可西里 更新时间:2023-11-01 07:53:13 26 4
gpt4 key购买 nike

我想在用 C# 编写的 WinForm 应用程序中报告操作的状态。为了更方便用户使用,我想根据状态在左侧显示一个图标。

  • 过程中的动画 GIF
  • 确定或错误图标取决于结果。

我想使用 native WinForms Label 控件,它可以很好地处理动画 GIF,并且看起来尽可能标准。

然而,我的问题是文字是写在图片上的。似乎没有任何属性可以为文本设置边距。我尝试了最明显的方法,即在其前面加上空格,这种方法有效,除非文本换行到下一行,如下所示。

enter image description here

如果可能的话,我宁愿不要花太多时间为此编写/测试/调试派生控件...我可以放置一个快速而肮脏的用户控件,在标签的左侧带有一个图片框,但感觉不太干净。

有什么技巧可以快速而优雅地解决这个问题,或者有人可以给我指出一个支持这个的相对轻量级的标签派生类吗? (我查看了 CodeProject,但找不到太多)。

谢谢。

最佳答案

一个简单的替代方法是使用 Button 而不是 Label,如下所示:

通过使用以下属性,您可以将 Button 设置为看起来像 Label,同时还可以选择让图像和文本彼此对齐:

FlatAppearance ↴
BorderSize = 0
MouseDownBackColor = Control
MouseOverBackColor = Control
FlatStyle = Flat
Image = [Your image]
ImageAlign = MiddleLeft
Text = [Your text]
TextAlign = MiddleLeft
TextImageRelation = ImageBeforeText

达到预期效果的简单方法;没有用户控制!

关于c# - 左侧带有图像的标签 - 防止文本覆盖图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9049573/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com