示例#1
0
        /// <summary>
        /// Обновление коллекции клиентов
        /// </summary>
        private static void Refresh()
        {
            // Задаем начало отсчета
            IntPtr hwnd = IntPtr.Zero;

            my_windows.Clear();
            //В бесконечном цикле перебираем все запущенные окна с классом ElementClient Window
            while (true)
            {
                //очищаем коллекцию клиентов и начинаем заполнять заново
                //получаем следующее окно с классом ElementClient Window.
                hwnd = WinApi.FindWindowEx(IntPtr.Zero, hwnd, "ElementClient Window", null);
                //Если наткнулись на ноль - значит выходим
                if (hwnd == IntPtr.Zero)
                {
                    break;
                }

                //добавляем элемент в нашу коллекцию
                My_Windows my_wind = new My_Windows(hwnd);
                if (my_wind.Name.Length > 0)
                {
                    my_windows.Add(my_wind);
                }
            }
            RefreshAllCombobox();
        }