如何獲得命名空間中的所有控件?例如,我想在System.Windows.Forms的控件:文本框,組合框等如何獲取命名空間中的所有控件?
4
A
回答
6
在命名空間一個控制的概念是有點不清楚。您可以使用反射來獲取從特定基類型派生的給定名稱空間中的程序集中的類。例如:
class Program
{
static void Main()
{
var controlType = typeof(Control);
var controls = controlType
.Assembly
.GetTypes()
.Where(t => controlType.IsAssignableFrom(t) &&
t.Namespace == "System.Windows.Forms"
);
foreach (var control in controls)
{
Console.WriteLine(control);
}
}
}
5
這將返回指定的命名空間的所有類:
string @namespace = "System.Windows.Forms";
var items = (from t in Assembly.Load("System.Windows.Forms").GetTypes()
where t.IsClass && t.Namespace == @namespace
&& t.IsAssignableFrom(typeof(Control))
select t).ToList();
0
表單對象有Controls
成員,其類型爲ControlCollection
。它基本上是所有控件的列表(帶有其他一些接口)。
編輯:根據您的評論,您需要將控件轉換回文本框。首先,您必須將其識別爲控件。
foreach (var control in controls)
{
if(control is TextBox)
{
(control as TextBox).Text = "Or whatever you need to do";
}
}
相關問題
- 1. 如何獲取Ruby中的命名空間中的所有類名?
- 2. 獲取目錄中所有特定命名空間的dll
- 3. 如何獲取Jena中使用的所有命名空間RDF模型
- 4. 如何獲取Clojure名稱空間中的所有新符號
- 5. 獲取命名空間內的所有類
- 6. 授權給定命名空間中的所有控制器?
- 7. 如何列出「java:global」命名空間中的所有JNDI條目
- 8. 如何獲取Pod中的當前命名空間?
- 9. 命名空間下的所有控制器的助手?
- 10. 獲取可用的clojure命名空間
- 11. 查找所有命名空間中的所有模型
- 12. 命名空間名稱空間控制器還有什麼?
- 13. 如何在多個命名空間中命名空間函數?
- 14. 如何從Mono中提取System.Net.Mail並重命名命名空間?
- 15. 獲取AppDomain中所有可用名稱空間的列表
- 16. 在Typescript中獲取名稱空間的所有值?
- 17. react-i18next:在一個文件中的所有命名空間+在裝飾器中傳遞命名空間
- 18. 如何動態讀取類XmlTypeAttribute以獲取命名空間?
- 19. 無法獲取命名空間System.Deployment.Application
- 20. 如何解救某個命名空間下的所有異常?
- 21. 取出特定命名空間的所有類別
- 22. 如何在javascript中獲取全局命名空間中對象的名稱
- 23. 如何在asp.net web上獲取JavaScript上的命名空間?
- 24. 命令刪除所有kubernetes命名空間中的所有豆莢
- 25. 如何編組沒有命名空間?
- 26. 沒有命名空間的Groovy XMLSlurper命名空間錯誤
- 27. 提取值當有命名空間
- 28. PHP如何從另一個命名空間導入所有類
- 29. 獲得命名空間
- 30. Apache Ignite:如何從命名緩存中獲取所有項目
的可能的複製http://stackoverflow.com/questions/1558127/how-can-i-get-all-controls-from-a-form-including-controls-in-any-容器 – 2011-04-26 08:12:57
或http://stackoverflow.com/questions/949246/how-to-get-all-classes-within-namespace – 2011-04-26 08:19:02
@Gunner,請閱讀這個問題,他談論的是命名空間而不是鏈接中的表單容器指定。 – 2011-04-26 08:23:18