Hmm, you don't say what the nature of the problem is, but at first glance my guess is just a misformed function.
| public Vector2 moveCursor(ref statoProgramma correnteStatoProgramma) |
| { |
| keyboardState= Keyboard.GetState(); |
| |
| if (keyboardState.IsKeyDown(Keys.Enter) == true) |
| correnteStatoProgramma = statoProgramma.finestraDiGioco; |
| ... |
| } |
| |
In your code, argument to the function doesnt have a function type, just an identifier.