public static void SetMinAndMax(this DataGridViewNumericUpDownColumn column, int min, int max) { DataGridViewNumericUpDownCell cellTemplate = ((DataGridViewNumericUpDownCell)column.CellTemplate); cellTemplate.MinimumValue = min; cellTemplate.MaximumValue = max; }
public override void InitializeEditingControl(int rowIndex, object initialFormattedValue, DataGridViewCellStyle dataGridViewCellStyle) { NumericUpDownEditingControl ctl = (NumericUpDownEditingControl)DataGridView.EditingControl; DataGridViewNumericUpDownCell cellTemplate = (DataGridViewNumericUpDownCell)DataGridView.Columns[ColumnIndex].CellTemplate; ctl.Maximum = cellTemplate.MaximumValue; ctl.Minimum = cellTemplate.MinimumValue; // Use the default row value when Value property is null. ctl.Value = Value == null ? DefaultValue : Convert.ToInt32(Value); ctl.Select(0, ctl.Value.ToString().Length); base.InitializeEditingControl(rowIndex, initialFormattedValue, dataGridViewCellStyle); }