Hay varias formas. Una sería la que dices tu, crear una nueva fila en el dataset y luego llenarlo con los datos.
Cita: dts.tabla1.addTabla1Row ( "Selecciona un item")
sqlString="select campo1 from tabla1"
dataAdapter = New OleDb.OleDbDataAdapter(sqlString, oConexion)
dataAdapter.Fill(Me.dts, "tabla1")
'luego ya enlazas tu combo con el dataset y seleccionas el index 0 del combo
Te comento la que hago yo. Antes de llenar el dataset, añade un un nuevo item con ese texto. O sea:
Cita: cmb.Items.Add(" Selecciona un item ")
oConexion.Open()
cmd.Connection = oConexion
cmd.CommandText = "select campo1 from tabla order by campo1"
Dim l As OleDb.OleDbDataReader = cmd.ExecuteReader
While l.Read
cmb.Items.Add(l.GetValue(0))
End While
l.Close()
oConexion.Close()
cmb.selectIndex =0
saludos