1.
you can not add custom control in datagridview
you should create a column of that type of custom control
2.
you can add custom control in button but you should use containers like panel, tabellayoutpanel
e.g.
button1.Controls.Add(new MyCustomControl1());
Happy Coding!
:)