【发布时间】:2021-06-17 17:13:22
【问题描述】:
所以我有一个面板,它从 API 获取信息并显示它,这些信息每秒都在变化,有时某些信息会被删除或替换。 目前我有这个:
我找到了一种以编程方式创建面板以及标签的方法,但是我将如何根据获得的信息编辑每个标签。
我有这个代码:
Guna2GradientPanel info = new Guna2GradientPanel();
info.Paint += new PaintEventHandler(this.panel_Paint);
info.Size = new Size(681, 41);
info.Location = new Point(21, 74);
info.FillColor = Color.FromArgb(23, 24, 45);
info.FillColor2 = Color.FromArgb(23, 24, 45);
info.BorderRadius = 5;
info.ShadowDecoration.BorderRadius = 12;
info.ShadowDecoration.Enabled = true;
info.ShadowDecoration.Color = Color.FromArgb(10, 10, 28);
info.ShadowDecoration.Shadow = new Padding(10, 10, 10, 10);
info.ShadowDecoration.Depth = 3;
InfoDisplayPanel.Controls.Add(info);
但我遇到的另一个问题是我无法在表单类之外执行此功能,我无法将此面板添加到主面板,因为我无法从静态函数访问面板,并且程序正在通过另一个类和线程获取信息,我需要以某种方式从另一个线程/类访问此函数。
【问题讨论】:
-
您可以将它们存储在字典中以便轻松找到。您还可以创建一个自定义控件,其中包含每行所需的控件以非常轻松地处理所有这些,并且可以使用 flowlayoutpanel 将它们放入。