Forms; namespace daniweb line , when it comes here it does not sense cell_validating event and skips to the end. Check to determine if the object is Null before calling method" error I think, when grid was populated these columns are null, nothing comes from database, so Cell Value Changed is wired at the time of datagridview populating.
But I also need to perform the task when the user ordinarily ends edit mode without having changed anything.
I would suggest that you start writing your tests first, for now at least.
The benefit there is that you have to design your code to be testable to begin with.
If you decide later (once you have an idea of how to better design your code), to test after the fact, that's fine.
The important thing right now is to separate the concerns. It's more or less the default design pattern for Win Forms.