Ho un problema con il cast di oggetti!

Ho le seguenti classi:
codice:
public class padre()
  {...}

public class figlio() : padre
  {
    public figlio(string tipo) : base()
      {...}
  }
Praticamente la classe Figlio eredita tutto dal padre, ed in più riceve una variabile.
Il problema è che ho un'altra funzione a cui devo passare il figlio, ma questa vuole SOLO oggetti di tipo padre... ho provato un cast del tipo:
codice:
funzioneBastarda((padre)oggFiglio);
...ma non succede nulla mi dà errore in quanto la variabile oggFiglio risulta essere di tipo figlio e quindi non compatibile...

AIUTO!!!!!!