You can try dynamcially setting it in an override of ProcessCmdKey when a tab comes in.
public class MyGridDataBoundGrid : GridDataBoundGrid
{
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if(keyData == Keys.Tab)
{
BindingManagerBase bmb = this.BindingContext[this.DataSource, this.DataMember];
this.WantTabKey = bmb.Count != 0;
}
return base.ProcessCmdKey (ref msg, keyData);
}
}