怎么遍历winform控件的属性?

 我来答
匿名用户
2013-12-02
展开全部
用反射来实现参考一下这个。虽然有些出入,但稍稍修改下就可以了public void getPropertyValue(Control container)
{
string[] propertyNames = { "Text", "Value", "Name" }; //想要取得的属性名称
Type typeCtr = null;
object obj = null;
System.Reflection.PropertyInfo p = null;
StringBuilder sbResult = new StringBuilder();

foreach (Control ctr in container.Controls)
{
typeCtr = ctr.GetType();//取得控件的类别
foreach (string str in propertyNames)
{
p = typeCtr.GetProperty(str); //取得指定名称的属性
if (p != null)
{
obj = p.GetValue(ctr, null); //取得属性对应的值
sbResult.AppendLine(string.Format("控件 {0} 的属性 {1} 的值为:{2}", ctr.Name, p.Name, obj)); //输出结果
}
}
}

MessageBox.Show(sbResult.ToString());
}

private void button1_Click(object sender, EventArgs e)
{
getPropertyValue(this);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式