public static IUIAutomationCacheRequest GetPropertiesCache()

in src/Desktop/UIAutomation/DesktopElementHelper.cs [33:65]


        public static IUIAutomationCacheRequest GetPropertiesCache(IUIAutomation uia, IEnumerable<int> pps, IEnumerable<int> pts)
        {
            if (uia == null) throw new ArgumentNullException(nameof(uia));

            var cr = uia.CreateCacheRequest();

            if (pps != null)
            {
                foreach (var pp in pps)
                {
                    cr.AddProperty(pp);
                }
            }

            IEnumerable<int> cps = Registrar.GetDefaultInstance().GetCustomPropertyRegistrations().Keys;
            foreach (var cp in cps)
            {
                cr.AddProperty(cp);
            }

            if (pts != null)
            {
                foreach (var pt in pts)
                {
                    if (pt != 0)
                    {
                        cr.AddPattern(pt);
                    }
                }
            }

            return cr;
        }