从WinForms Designer中,我可以获取组件列表,如果组件是控件,我可以使用GetName()方法获取其名称。
但是,如果组件是Component,则没有GetName()方法。我怎么能得到该组件的名称?
通过名称,我引用从组件所在的winforms设计器的属性表中给出的对象名称。
答案 0 :(得分:3)
没关系,想一想GetName()是我自己在Control上的扩展方法。
我需要更改它以扩展Component。
对于后代,以下是获取控件或组件名称的方法:
public static string GetName(this Component component)
{
return (string)TypeDescriptor.GetProperties(component)["Name"].GetValue(component);
}