/// If not specified, it published technical articles are original, anyone references please indicate the source and include this statement /// Author: 9CBS screen name alias88, e-mail: alias88 @ 163.com, QQ : 63343
/// Usage such as: /// 1 Object obj = getmember (frmmain, "txtname", null); /// (Obj as control) .Text = "Hello!" // is equivalent to frmmain.txtname.text = " Hello! "/// 2 Object obj = getmember (frmmain," txtname.text ", null; /// string text = obj.tostring (); // is equivalent to text = frmmain.txtname.text
///
{
String [] Strmember;
String membername = "";
Object obj = NULL;
TYPE OBJTYPE = NULL;
Try
{
Strmember = POBJPATH.SPLIT ('.');
For (int i = 0; i { IF (i == 0) { Obj = (object) ptopobject; Objtype = ptopobject.gettype (); } MemberName = Strmember [i]; IF (ObjType! = NULL) { Obj = (Object) Objtype.invokemember (Membername, Bindingflags.public | bindingflags.nonpublic | bindingflags.ignorecase | BindingFlags.instance | BindingFlags.Static | BindingFlags.Getfield | BindingFlags.getProperty, NULL, OBJ, INDEX); IF (Obj! = null) Objtype = Obj.gettype (); } Else { Obj = NULL; Break; } } Return Obj; } Catch (System.exception EX) { String errmsg = string.format ("Get {0}": {1} error: / n {2} ", Pobjpath, MemberName, EX.MESSAGE System.console.writeLine (Errmsg); Return NULL; } }