Example #1
0
            public ListNode(PropertyInfo prop, Object obj)
            {
                FName   = prop.Name;
                FStates = ObjectFieldStates.IsProperty;

                MethodInfo mInfo = prop.GetGetMethod(true);

                if (mInfo.IsStatic)
                {
                    FStates |= ObjectFieldStates.IsStatic;
                }

                if (mInfo.IsPublic)
                {
                    FStates |= ObjectFieldStates.IsPublic;
                }
                else if (mInfo.IsPrivate)
                {
                    FStates |= ObjectFieldStates.IsPrivate;
                }
                else
                {
                    FStates |= ObjectFieldStates.IsProtected;
                }

                ParameterInfo[] pInfos = prop.GetIndexParameters();
                if (pInfos.Length > 0)
                {
                    FValue   = String.Format("[{0}] : {1}", pInfos[0].ParameterType.FullName, mInfo.ReturnType.FullName);
                    FStates |= ObjectFieldStates.IsIndexer;
                }
                else
                {
                    try
                    {
                        FValue = GetObjectValue(prop.GetValue(obj, null));
                    }
                    catch (Exception)
                    {
                        FValue = "<not accessible>";
                    }
                }
            }
Example #2
0
            public ListNode(FieldInfo field, Object obj)
            {
                FName   = field.Name;
                FStates = ObjectFieldStates.IsNone;
                if (field.IsStatic)
                {
                    FStates |= ObjectFieldStates.IsStatic;
                }

                if (field.IsPublic)
                {
                    FStates |= ObjectFieldStates.IsPublic;
                }
                else if (field.IsPrivate)
                {
                    FStates |= ObjectFieldStates.IsPrivate;
                }
                else
                {
                    FStates |= ObjectFieldStates.IsProtected;
                }

                FValue = GetObjectValue(field.GetValue(obj));
            }