public override IReadOnlyList <PropertyId> GetSupportedProperties() { this.Automation.NativeAutomation.PollForPotentialSupportedProperties(this.NativeElement, out int[] rawIds, out string[] rawNames); var patterns = new List <PropertyId>(rawIds.Length); for (var i = 0; i < rawIds.Length; i++) { var id = rawIds[i]; if (!PropertyId.TryGet(id, out var propertyId)) { propertyId = PropertyId.GetOrCreate(id, rawNames[i] + "_NOT_HANDLED"); } patterns.Add(propertyId); } return(patterns); }