コード例 #1
0
 /// <summary>
 /// Returns a list of child windows
 /// </summary>
 /// <param name="parent">Parent of the windows to return</param>
 /// <returns>List of child windows</returns>
 private static List<IntPtr> GetChildWindows(IntPtr parent)
 {
     List<IntPtr> result = new List<IntPtr>();
     GCHandle listHandle = GCHandle.Alloc(result);
     try
     {
         Win32.EnumWindowProc childProc = new Win32.EnumWindowProc(EnumWindow);
         Win32.EnumChildWindows(parent, childProc, GCHandle.ToIntPtr(listHandle));
     }
     finally
     {
         if (listHandle.IsAllocated)
             listHandle.Free();
     }
     return result;
 }
コード例 #2
0
ファイル: Win32.cs プロジェクト: hataka/CommonControls
        public static List <IntPtr> GetChildWindows(IntPtr parent)
        {
            List <IntPtr> list  = new List <IntPtr>();
            GCHandle      value = GCHandle.Alloc(list);

            try
            {
                Win32.EnumWindowProc lpEnumFunc = new Win32.EnumWindowProc(Win32.EnumWindow);
                Win32.EnumChildWindows(parent, lpEnumFunc, GCHandle.ToIntPtr(value));
            }
            finally
            {
                if (value.IsAllocated)
                {
                    value.Free();
                }
            }
            return(list);
        }
コード例 #3
0
        /// <summary>
        /// Returns a list of child windows
        /// </summary>
        /// <param name="parent">Parent of the windows to return</param>
        /// <returns>List of child windows</returns>
        private static List <IntPtr> GetChildWindows(IntPtr parent)
        {
            List <IntPtr> result     = new List <IntPtr>();
            GCHandle      listHandle = GCHandle.Alloc(result);

            try
            {
                Win32.EnumWindowProc childProc = new Win32.EnumWindowProc(EnumWindow);
                Win32.EnumChildWindows(parent, childProc, GCHandle.ToIntPtr(listHandle));
            }
            finally
            {
                if (listHandle.IsAllocated)
                {
                    listHandle.Free();
                }
            }
            return(result);
        }
コード例 #4
0
ファイル: Win32.cs プロジェクト: hataka/CommonControls
 private static extern bool EnumChildWindows(IntPtr hwndParent, Win32.EnumWindowProc lpEnumFunc, IntPtr lParam);