None of the above. Your problem is that you are creating a custom data grid view column, but you are forgetting that each column displays cells in one of two modes. The first is Display mode, where a class shows it's data in a presentation format. The second is Edit mode where the displayed contents of the cell are replaced with an editing control that another class that you write provides.
Read
this[
^],
this[
^],
this[
^], and
this[
^].
Unless you can show your data in one of the standard column types, you'll be inheriting from DataGridViewColumn and making your custom column from scratch.