2009-08-06 3 views

답변

0

Control.Controls proeprty는 자식 컨트롤의 전체 트리가 아닌 지정된 컨트롤의 모든 자식 컨트롤을 반환합니다. 그러나 모든 자식 컨트롤을 반환하는 메서드를 작성하는 것은 어렵지 않습니다. 당신이 .NET 3.5에 있다면 당신은 아주 쉽게 그것을 할 Linq를 사용할 수 있습니다 :

var allChildControls = control.Controls.OfType<Control>().SelectMany(c => c.Controls.OfType<Control>()); 
+0

부수적으로. OfType 을 사용하여 Controls 컬렉션을 필터링해야했습니다. 컬렉션에서 Control 개체 만 반환 했으므로 이것이 필요하지 않다고 생각했습니다. 왜 이것이 필요한지 아는 사람이 있습니까? –

0

I, 당신은 명시 적으로 재귀없이 말했다 알고 있지만, 나는이 대답은 깔끔한 생각했다. yield 키워드의 사용을 제외하고 특별한 것은 없습니다.

https://stackoverflow.com/a/277654/645283

관련 문제