A control for editing numeric values
Inheritance: System.Windows.Forms.NumericUpDown, IDataGridViewEditingControl
Beispiel #1
0
        /// <summary>
        /// Initialises the editing control
        /// </summary>
        /// <param name="rowIndex">The row index number</param>
        /// <param name="initialFormattedValue">The initial value</param>
        /// <param name="dataGridViewCellStyle">The cell style</param>
        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);
            NumericUpDownEditingControl ctl =
                DataGridView.EditingControl as NumericUpDownEditingControl;

            if (this.Value == null)
            {
                ctl.Value = 0;
            }
            else
            {
                if (this.Value.ToString() != "")
                {
                    ctl.Value = Decimal.Parse(this.Value.ToString());
                }
            }
        }
 public void TestNumericUpDownEditingControl_HasCorrectSettings()
 {
     //---------------Set up test pack-------------------
     //---------------Assert Precondition----------------
     //---------------Execute Test ----------------------
     NumericUpDownEditingControl editingControl = new NumericUpDownEditingControl();
     //---------------Test Result -----------------------
     Assert.AreEqual(2, editingControl.DecimalPlaces);
     Assert.IsFalse(editingControl.RepositionEditingControlOnValueChange);
     Assert.AreEqual(0, editingControl.EditingControlRowIndex);
     Assert.IsNull(editingControl.EditingControlDataGridView);
     Assert.IsFalse(editingControl.EditingControlValueChanged);
 }
        public void TestNumericUpDownEditingControl_EditingControlFormattedValue()
        {
            //---------------Set up test pack-------------------
            NumericUpDownEditingControl editingControl = new NumericUpDownEditingControl();
            //---------------Assert Precondition----------------
            string defaultValueString = 0D.ToString("0.00");
            Assert.AreEqual(defaultValueString, editingControl.EditingControlFormattedValue);
            //Assert.AreEqual(defaultValueString, editingControl.GetEditingControlFormattedValue(null));
            //---------------Execute Test ----------------------

            // REQUIRES A PARENT GRID FOR DIRTY NOTIFICATION, NOT WORTH THE TROUBLE?
            //Decimal dtValue = 12.345;
            //editingControl.EditingControlFormattedValue = dtValue.ToString();
            ////---------------Test Result -----------------------
            //Assert.AreEqual(dtValue.ToString("0.00"), editingControl.EditingControlFormattedValue);
        }