用一个简单的递归来判断子控件
Control GetControl(Control C)
{
// GetChildAtPoint 检索位于指定坐标处的子控件
Control Temp = C.GetChildAtPoint(C.PointToClient(Cursor.Position)); //PointToClient 将指定屏幕点的位置计算成工作区坐标
if (Temp == null)
return C;
else
return GetControl(Temp);
}