2017-06-02 65 views
-2

在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.我在這裏做錯了什麼,這真是令人困惑。

+0

這可能是簡單的面板不包含控制。你是如何將它們添加到ActionsPanel的? – Steve

+0

我正在使用'panel.Controls.Add(mytextbox);'添加一個TextBox類型的控件的例子。這些控件在獲取它們時也是可見的。 –

+0

面板是ActionPanels吧? – Steve

回答

-1

找到解決辦法,問題是,所有的TextBox控件是一個TableLayoutPanel內部更好的佈局控制,完整的源代碼在這裏:pastebin.com/yz8JN4yr