// showResultProfile() !!!!!
        bool showResultProfile() // при щелчке эскиза с профилем ЛЕВОЙ кнопкой мыши
        {
            switch (profile)     // profile определен НЕ в comDef !
            {
                #region  case Profile.Circle

            case Profile.Circle:
                //*****  1
                // TBox_1.Val - свойство, если ноль, то свойство выводит сообщение об ошибке (в окно Result_1)
                if (TBox_1.Val == 0.0)
                {
                    return(false);
                }
                // если ОК
                d_ex               = TBox_1.val;       // миллиметры
                area               = Trig.AreaCircle(d_ex);
                axial_w            = Trig.AxialWCircle(d_ex);
                polar_w            = Trig.PolarWCircle(d_ex);
                Result_1.BackColor = System.Drawing.Color.SpringGreen;
                Result_1.setText("Площадь сечения S = ", area,     // сантиметры^2
                                 "\nМомент сопротивления осевой\nWx = ", axial_w,
                                 "\nМомент сопротивления полярный\nWp = ", polar_w);
                break;      // end of - case Profile.Circle

                #endregion  case Profile.Circle

                #region  case Profile.CircleRing

            case Profile.CircleRing:
                //*****  1
                if (TBox_1.Val == 0.0)
                {
                    return(false);
                }
                //*****  2
                if (TBox_2.Val == 0.0)
                {
                    return(false);
                }
                // если ОК
                d_ex      = TBox_1.val;     // миллиметры
                thickness = TBox_2.val;     // миллиметры
                d_in      = d_ex - 2.0 * thickness;
                if (d_in < 0.0)
                {                                                             // ref TBox_2 - куда ставить курсор
                    warnShow(ref TBox_2, "Толщина стенки больше допустимой"); // "Error !\nH < 2 * S"
                    return(false);
                }                                                             // if (d_in < 0.0)
                // если и тут ОК
                area               = Trig.AreaCircleRing(d_ex, d_in);
                axial_w            = Trig.AxialWCircleRing(d_ex, d_in);
                polar_w            = Trig.PolarWCircleRing(d_ex, d_in);
                Result_1.BackColor = System.Drawing.Color.SpringGreen;
                Result_1.setText("Внутренний диаметр d = ", d_in.Mm, d_in.wtDim,     // т.е. показать d вн. в мм
                                 "\nПлощадь сечения S = ", area,
                                 "\nМомент сопротивления осевой\nWx = ", axial_w,
                                 "\nМомент сопротивления полярный\nWp = ", polar_w);
                break;      // end of - case Profile.CircleRing

                #endregion  case Profile.CircleRing

                #region  case Profile.Rectangle

            case Profile.Rectangle:
                //*****  1
                if (TBox_1.Val == 0.0)
                {
                    return(false);
                }
                //*****  2
                if (TBox_2.Val == 0.0)
                {
                    return(false);
                }
                // если ОК
                b_ex               = TBox_1.val; // Наружная ширина в мм
                h_ex               = TBox_2.val; // Наружная высота в мм
                area               = Trig.AreaRectangle(b_ex, h_ex);
                axial_w            = Trig.AxialWRectangle(b_ex, h_ex);
                polar_w            = Trig.PolarWRectangle(b_ex, h_ex);
                Result_1.BackColor = System.Drawing.Color.SpringGreen;
                Result_1.setText("Площадь сечения S = ", area,
                                 "\nМомент сопротивления осевой\nWx = ", axial_w,
                                 "\nМомент сопротивления полярный\nWp = ", polar_w);
                break;      //end of - case Profile.Rectangle

                #endregion  case Profile.Rectangle

                #region  case Profile.RectangleRing

            case Profile.RectangleRing:
                //*****  1
                if (TBox_1.Val == 0.0)
                {
                    return(false);
                }
                //*****  2
                if (TBox_2.Val == 0.0)
                {
                    return(false);
                }
                //*****  3
                if (TBox_3.Val == 0.0)
                {
                    return(false);
                }
                // если ОК
                b_ex      = TBox_1.val;     // Наружная ширина в мм
                h_ex      = TBox_2.val;     // Наружная высота в мм
                thickness = TBox_3.val;     // Толщина стенки в мм
                b_in      = b_ex - 2.0 * thickness;
                h_in      = h_ex - 2.0 * thickness;
                if ((b_in <= 0.0) || (h_in <= 0.0))
                {
                    warnShow(ref TBox_3, "Толщина стенки больше допустимой"); // "Error !\nH < 2 * S"
                    return(false);
                }                                                             // if ((b_in < 0.0)||(h_in < 0.0))
                //  если и тут ОК
                area    = Trig.AreaRectangleRing(b_ex, h_ex, b_in, h_in);
                axial_w = Trig.AxialWRectangleRing(b_ex, h_ex, b_in, h_in);
                // полярный момент для RectangleRing сосчитать не получается
                Result_1.BackColor = System.Drawing.Color.SpringGreen;
                Result_1.setText("Внутренняя ширина b = ", b_in.Mm, b_in.wtDim,
                                 "\nВнутренняя высота h = ", h_in.Mm, h_in.wtDim,
                                 "\nПлощадь сечения S = ", area,
                                 "\nМомент сопротивления осевой\nWx = ", axial_w,
                                 "\nМомент сопротивления полярный\nWp = ", "no data");
                break;      //end of - case Profile.RectangleRing:

                #endregion  case Profile.RectangleRing
            }   // end of - switch (profile)
            return(true);
        }       // end of - showResultProfile()