#if NETFRAMEWORK || WINDOWS using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace DH.RBAC.Utility.Other { public class PanelScrollHelper { /// /// 初始化panel /// /// public static void InitializePanelScroll(Panel panel) { panel.Click += (obj, arg) => { panel.Select(); }; InitializePanelScroll(panel, panel); } /// /// 递归初始化panel的内部个容器和控件 /// /// /// private static void InitializePanelScroll(Control container, Control panelRoot) { foreach (Control control in container.Controls) { if (control is Panel || control is GroupBox || control is SplitContainer || control is TabControl || control is UserControl) { control.Click += (obj, arg) => { panelRoot.Select(); }; InitializePanelScroll(control, panelRoot); } else if (control is Label) { control.Click += (obj, arg) => { panelRoot.Select(); }; } } } } } #endif