TypeDescriptor is used to get information of a Type. To use it, you need to pass a component to its static methods. In the above code, I have just created an object addldthorpe Button class you can use any close for this and got the information name in this example from it. The GetProperties how take either the object or Typeof object to list all the Events it has in a form of PropertyDescriptorCollection. Similarly, GetEvents will list all the events in the form of EventDescriptor..
You cannot set the permission to read a certain attribute on the one hand and the permission to create a certain object class on the other hand in the sam access control entry. The reason for this is that only one scope specifier is allowed per ACE. For such cases, several different ACEs are necessary. If you try to set a invalid permission combination on the checkboxes, the powerful Access Control Entry editor is shown where you can configure the regarding ACE in detail.