Расчетное решение для столбца, вероятно, является лучшим. Но если вы не можете изменить схему таблицы данных, чтобы добавить ее, вы можете перебрать таблицу и заполнить новую коллекцию, которая будет служить источником данных.
var dict = new Dictionary<Guid, string>();
foreach (DataRow row in dt.Rows)
{
dict.Add(row["GUID"], row["Name"] + " " + row["Surname"]);
}
cbo.DataSource = dict;
cbo.DataTextField = "Value";
cbo.DataValueField = "Key";
cbo.DataBind();
Очевидно, что это не так эффективно, как привязка непосредственно к DataTable, но я не стал бы беспокоиться об этом, если в таблице нет тысяч строк.