gpt4 book ai didi

c# - 如何操作运行时创建的控件?

转载 作者:行者123 更新时间:2023-12-02 17:24:24 25 4
gpt4 key购买 nike

假设我在页面加载中有这个:

Label lblc = new Label();

for (int i = 1; i <= 10; i++)
{
lblc.Text = i.ToString();
this.Controls.Add(lblc);
}

如何在运行时操作这些控件?

我想要:

  • 设置/获取其文本。

  • 引用特定控件,在本例中为标签。

最佳答案

如果您知道将拥有多少个标签,请使用数组,

Label[] lblc = new Label[10];

for (int i = 0; i < 10; i++)
{
lblc[i] = new Label() { Text = (i + 1).ToString() };
this.Controls.Add(lblc[i]);
}

然后您将使用 lblc[0] 引用文本框 1,使用 lblc[1] 引用文本框 2,依此类推。或者,如果您不知道您将拥有多少个标签,您可以随时使用类似的东西。

List<Label> lblc = new List<Label>();
for (int i = 0; i < 10; i++)
{
lblc.Add(new Label() { Text = (i + 1).ToString() });
this.Controls.Add(lblc[i]);
}

您以与数组相同的方式引用它,只需确保在方法外部声明列表或数组,以便在整个程序中拥有范围。

假设您想要同时处理文本框和标签,然后要跟踪所有控件,您可以通过同一个列表来完成此操作,以每个标签都有自己的宠物文本框为例

List<Control> controlList = new List<Control>();
for (int i = 0; i < 10; i++)
{
control.Add(new Label() { Text = control.Count.ToString() });
this.Controls.Add(control[control.Count - 1]);
control.Add(new TextBox() { Text = control.Count.ToString() });
this.Controls.Add(control[control.Count - 1]);
}

祝你好运!需要添加任何其他内容只需询问即可。

关于c# - 如何操作运行时创建的控件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16957450/

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