private void Control_ValueChanging(object sender, System.EventArgs e)
        {
            SlideCtrl    s = sender as SlideCtrl;
            UIFloatParam p = s.Tag as UIFloatParam;

            p.Value = s.Pos;
        }
        public void DisplayParameters(List <UIbaseParam> _parameters)
        {
            SuspendLayout();
            foreach (var pd in m_parametersDesc)
            {
                if (pd.control is SlideCtrl)
                {
                    var slider = pd.control as SlideCtrl;
                    slider.ValueChanged -= Control_ValueChanging;
                    slider.Dispose();
                }
            }
            m_parametersDesc.Clear();
            ResumeLayout();

            int itemY = 0;
            int itemH = 16;

            foreach (var p in _parameters)
            {
                Control control = null;

                if (p is UIFloatParam)
                {
                    var fp = p as UIFloatParam;

                    var slider = new SlideCtrl();
                    slider.Location = new System.Drawing.Point(0, itemY);
                    slider.Height   = itemH;
                    slider.SetRange(fp.MinRange, fp.MaxRange, 0.01f);
                    slider.SetPos(fp.Value);
                    slider.Parent         = this;
                    slider.Text           = p.Name;
                    slider.ValueChanging += Control_ValueChanging;
                    slider.Tag            = p;
                    slider.CreateControl();

                    control = slider;
                }
                else if (p is UITexture2DParam)
                {
                    var tp = p as UITexture2DParam;

                    var textbox = new TextBox();
                    textbox.Location     = new System.Drawing.Point(0, itemY);
                    textbox.Height       = itemH;
                    textbox.Parent       = this;
                    textbox.Text         = tp.Value;
                    textbox.TextChanged += Textbox_TextChanged;
                    textbox.Tag          = p;
                    textbox.CreateControl();

                    control = textbox;
                }

                var pd = new ParamDesc();
                pd.param   = p;
                pd.control = control;

                itemY += itemH;
            }
        }