public override object Clone()
        {
            ComTextBoxNumericUpDownColumn c = (ComTextBoxNumericUpDownColumn)base.Clone();

            c.ValueType     = base.ValueType;
            c.Maximum       = this.Maximum;
            c.Minimum       = this.Minimum;
            c.Increment     = this.Increment;
            c.DecimalPlaces = this.DecimalPlaces;

            return(c);
        }
            public override void DetachEditingControl()
            {
                base.DetachEditingControl();
                KryptonDataGridViewTextBoxEditingControl Tb  = (KryptonDataGridViewTextBoxEditingControl)DataGridView.EditingControl;
                ComTextBoxNumericUpDownColumn            col = (ComTextBoxNumericUpDownColumn)OwningColumn;



                Tb.KeyUp -= this_KeyUp;

                this.editControl.LostFocus -= editControl_GotFocus;


                this.editControl = null;
            }
            public override void InitializeEditingControl(int rowIndex, object initialFormattedValue, DataGridViewCellStyle dataGridViewCellStyle)
            {
                // Set the value of the editing control to the current cell value.
                base.InitializeEditingControl(rowIndex, initialFormattedValue, dataGridViewCellStyle);
                ComTextBoxNumericUpDownColumn            col = (ComTextBoxNumericUpDownColumn)OwningColumn;
                KryptonDataGridViewTextBoxEditingControl Tb  = (KryptonDataGridViewTextBoxEditingControl)DataGridView.EditingControl;

                this.editControl = Tb;

                this.Maximum       = col.Maximum;
                this.Minimum       = col.Minimum;
                this.Increment     = col.Increment;
                this.DecimalPlaces = col.DecimalPlaces;

                Tb.KeyUp += this_KeyUp;
                this.editControl.LostFocus += editControl_GotFocus;

                InitializeComponent();
            }