我有一个用户控件,在这个控件中我有一堆文本框和标签。现在我已将此用户控件链接到另一个表单的选项卡控件。这是我正在使用的代码
TabPage tp = new TabPage();
tp.Controls.Add(TipUserControl);
tp.Text = "Tab "+ tabctrl_Fields.TabCount + 1;
tabctrl_Fields.TabPages.Add(tp);
当我点击“添加另一个标签”按钮时,会执行上面的代码,并创建一个带有文本框的新标签页(类似于标签1)。
现在我要找的是当用户点击表单中的“完成”按钮(不在用户控件中)时,它应该能够循环遍历每个选项卡和每个控件(文本框,标签等)标签。任何人都可以建议如何编写此代码?
提前致谢, 斯瓦米
答案 0 :(得分:0)
我会在您要搜索的控件中添加一个Tag并使用该方法: Ability to find WinForm control via the Tag property
private void FindTag(Control.ControlCollection controls)
{
foreach (Control c in controls)
{
if (c.Tag != null)
//logic
if (c.HasChildren)
FindTag(c.Controls); //Recursively check all children controls as well; ie groupboxes or tabpages
}
}
或者通过Tab控件递归迭代