通过Panel控件进行迭代

时间:2017-06-02 20:03:38

标签: c# winforms textbox controls

在C#WinForm应用程序中,我需要迭代所有类型为TextBox的控件。 TextBox ontrols是动态添加的。

        IEnumerable<TextBox> textBoxes = ActionsPanel.Controls.OfType<TextBox>();

        Debug.WriteLine(ActionsPanel.Controls.Count);

        foreach (TextBox textBox in textBoxes)
        {

        }

上面的代码不起作用,在foreach中我什么也没得到。奇怪的是,如果我计算面板中的所有控件,我会得到面板上的实际控件数。

        Debug.WriteLine(textBoxes.Count());

返回0.我在这里做错了什么,实在令人困惑。

1 个答案:

答案 0 :(得分:-1)

找到解决方案,问题是所有TextBox控件都在TableLayoutPanel内部以获得更好的布局控制,这里有完整的源代码:pastebin.com/yz8JN4yr