// </Snippet101> // NOTHING GETS RETURNED FROM THE FOLLOWING // <Snippet102> private void ListRequiredProperties() { AutomationProperty[] propertiesRequired; // Get any ControlType instance. ControlType controlTypeInstance = ControlType.Button; Type type = typeof(ControlType); System.Reflection.FieldInfo[] fields = type.GetFields(); foreach (System.Reflection.FieldInfo field in fields) { if (field.IsStatic) { ControlType controlType = field.GetValue(controlTypeInstance) as ControlType; Debug.WriteLine("\n********************"); Debug.WriteLine(controlType.ProgrammaticName); Debug.WriteLine("Required properties:"); propertiesRequired = controlType.GetRequiredProperties(); if (propertiesRequired.GetLength(0) == 0) { Debug.WriteLine("(None)"); } else { foreach (AutomationProperty prop in propertiesRequired) { Debug.WriteLine(prop.ProgrammaticName); } } } } // </Snippet102> }