SpreadsheetGear 2023
CellEndEdit Event (WorkbookView)

SpreadsheetGear.Windows.Forms Namespace > WorkbookView Class : CellEndEdit Event
Occurs when edit mode is ending and provides the ability to force edit mode to continue by cancelling the event.
<System.ComponentModel.DescriptionAttribute("Occurs when edit mode ends.")>
Public Event CellEndEdit As CellEndEditEventHandler
Dim instance As WorkbookView
Dim handler As CellEndEditEventHandler
AddHandler instance.CellEndEdit, handler
[System.ComponentModel.Description("Occurs when edit mode ends.")]
public event CellEndEditEventHandler CellEndEdit
Event Data

The event handler receives an argument of type CellEndEditEventArgs containing data related to this event. The following CellEndEditEventArgs properties provide information specific to this event.

Returns the active cell from the time edit mode was started.  
Gets or sets the value which specifies whether the event should be canceled.  
Gets or sets the edit entry text.  
Returns the range selection from the time edit mode was started.  

The CellEndEdit event occurs when edit mode is being ended, and provides the event handler with the ability to modify the text to be placed into the ActiveCell, or force edit mode to continue.

The CellEndEdit event is always invoked on the thread which created the workbook view control, and a lock is always acquired on the workbook set associated with the workbook view control before CellEndEdit is invoked.

         * Demonstrate the CellEndEdit event by validating that the 
         * user entered a valid integer > 0.
        private void workbookView_CellEndEdit(object sender, CellEndEditEventArgs e)
            // Acquire a lock on the workbook set.
                // Get a reference to the active worksheet's cells.
                SpreadsheetGear.IRange cells = (await LockedWorkbookView.GetActiveWorksheetAsync()).Cells;
                // Check if the correct cell is selected.
                if (workbookView.RangeSelection.Equals(cells["B1"]))
                    // Try to convert the entry to an integer.
                    int result;
                    bool validInt = Int32.TryParse(e.Entry, out result);
                    // Check if the entry is valid.
                    if (!validInt || result <= 0)
                        // Show a message and cancel CellEndEdit.
                        MessageBox.Show("The entry must be an integer greater than 0.", 
                            "Entry Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        e.Cancel = true;
                // Release the lock on the workbook set.

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also