日期:2014-05-19  浏览次数:20988 次

请教 反射问题
FieldInfo   fieldInfo   =   this.GetType().GetField( "button1 ",  
System.Reflection.BindingFlags.NonPublic   |
System.Reflection.BindingFlags.Instance);
if   (fieldInfo   !=   null)
{
fieldInfo.FieldType   button   =   (fieldInfo.FieldType)fieldInfo;
//   错误,请问怎么原来的类型   fieldInfo.FieldType
}


我的意思是:
在WinForm中找到指定的控件,然后修改这个控件的属性。

请高手帮个忙啊。。。

------解决方案--------------------
FieldInfo.SetValue方法

------解决方案--------------------
if(fieldInfo.FieldType == typeof(Button))
{
Button button = fieldInfo.GetValue(this);
}
------解决方案--------------------
Form本身有控件集合,可递归取得所有的控件,查找相关控件再做相应处理