You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WinForms中点击UserControl内按钮动态生成Label的实现方法咨询

实现代码

将以下代码直接放入button1_Click方法内部即可,相关参数可根据需求自行调整:

// 自定义配置区,按需修改即可
string customText = "你的自定义标签内容";
Point customPosition = new Point(20, 30); // 坐标为相对于当前UserControl的左上角偏移
string customTooltip = "鼠标悬浮时显示的提示内容";

// 初始化Label控件
Label generatedLabel = new Label
{
    Text = customText,
    Location = customPosition,
    AutoSize = true // 自动适配文本长度,避免内容被截断
};

// 绑定Tooltip提示
ToolTip labelTooltip = new ToolTip();
labelTooltip.SetToolTip(generatedLabel, customTooltip);

// 将Label添加到UserControl的可见控件集合中
this.Controls.Add(generatedLabel);

可选优化:避免多次生成的标签重叠

如果需要每次点击生成的标签自动错开位置,可以在UserControl类的全局范围声明一个偏移计数器:

// 写在UserControl类内部,方法之外
private int _verticalOffset = 30;

之后把点击事件里的位置配置改为:

Point customPosition = new Point(20, _verticalOffset);
// 生成Label之后新增一行,累加偏移量
_verticalOffset += 25;

即可实现所有生成的标签纵向依次排列,不会重叠。

内容的提问来源于stack exchange,提问作者Gazdini9991

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 23:06:03