private void Init() { // Events { EventInfo[] eventInfos = this.GetType().GetEvents(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); foreach (EventInfo eventInfo in eventInfos.Where(MauEventAttribute.HasAttribute)) { var attr = eventInfo.GetCustomAttribute <MauEventAttribute>(); HandledEvents.Add(attr.EventName, eventInfo); } } // Properties { PropertyInfo[] propertyInfos = this.GetType().GetProperties(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); foreach (PropertyInfo propertyInfo in propertyInfos.Where(MauProperty.HasAttribute)) { var attr = propertyInfo.GetCustomAttribute <MauProperty>(); HandledProps.Add(attr.PropertyName, new MauPropertyHolder(propertyInfo, true)); } } // Vars { PropertyInfo[] varInfos = this.GetType().GetProperties(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); foreach (PropertyInfo varInfo in varInfos.Where(MauVariable.HasAttribute)) { HandledVars.Add(varInfo.Name, varInfo); } } // Methods { MethodInfo[] methodInfos = this.GetType().GetMethods(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); foreach (MethodInfo methodInfo in methodInfos.Where(MauMethod.HasAttribute)) { var attr = methodInfo.GetCustomAttribute <MauMethod>(); HandledMethods.Add(attr.MethodName, methodInfo); } } MyAngularUi.RegisterComponent(this); }