When this code returns psz = "", then no pasting is done and PasteCelltext is not raised.
string psz = null;
if (iData.GetDataPresent(DataFormats.UnicodeText))
psz = iData.GetData(DataFormats.UnicodeText) as string;
else if (iData.GetDataPresent(DataFormats.Text))
psz = iData.GetData(DataFormats.Text) as string;
This code is in GridModelDatabinder.cs, the DataBoundPaste method.