我的 Windows 窗体中有一个面板,我想向其中添加文本框等其他控件,并循环访问面板中的所有元素以检索其中的所有数据。
这可能与面板控制有关吗?
我尝试了一个 foreach 循环,例如
foreach(textbox tb in panel1)
{
}
但我收到一条错误消息,指出面板没有 GetEnumerator 的公共(public)定义。
什么是更好的控件/容器,我可以在其中添加更多控件并最终访问其中的所有控件及其数据?
更新 请注意 - 我在代码中添加多个文本框时遇到了一些问题。 我创建了一个文本框对象,然后将其添加到面板,但只显示了一个。 我在本网站和其他网站的其他地方读到,添加同名文本框可能会导致问题。
为解决此问题,我将面板替换为效果很好的流式布局面板。 希望这对其他人有帮助。
最佳答案
这是正确的控件。尝试迭代面板对象的 Controls 属性。
foreach(Control control in panel.Controls)
{
if(control is TextBox)
{
TextBox textBox = control as TextBox;
//etc.
}
}
关于c# - 带子项的 Windows 窗体控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18728150/