C# else if non funziona?

di Anonimizzato19922 il
7 risposte
Protected void OnBSpazioClicked (object sender, EventArgs e)
{


if (TTempo.Text != null && TVelocità.Text != null)
{ // s=v*t
Spazio.Text = Convert.ToString (Convert.ToDouble (TTempo.Text) * Convert.ToDouble (TVelocità.Text));

}
else if (TTempo.Text != null && TAccellerazione.Text != null)
{// s=(A*t)*t
TSpazio.Text = Convert.ToString ((Convert.ToDouble (TTempo.Text) * Convert.ToDouble (TAccellerazione.Text)) * Convert.ToDouble (TTempo.Text));
}
else if (TVelocità.Text != null && TAccellerazione.Text != null)
{ //s = (v/a) * v
TSpazio.Text = Convert.ToString((Convert.ToDouble(TVelocità.Text)/Convert.ToDouble(TAccellerazione.Text))*Convert.ToDouble(TVelocità.Text));
}


}
Qualcuno mi sa dire perchè quando clicco il bottone se la prima condizione è falsa chiude il programma ignorando la seconda?(utilizzo modevelop)

7 Risposte

  • Avevi già aperto un thread simile
  • Si lo so, nel primo ero stato poco chiaro e allora l'ho ripostato.
    Vado a eliminare il vecchio post.
  • Ma con queste espressioni

    TTempo.Text != null

    che vuoi dire?
  • oregon ha scritto:


    Ma con queste espressioni

    TTempo.Text != null

    che vuoi dire?

    TTempo sarebbe un textbox.
    La condizione è che non deve essere vuota.
    Per funzionare funziona, solamente che come ho già detto se la prima condizione è vera la esegue, se è falsa mi chiude il programma e mi da errore ignorando le altre condizioni.
    E non riesco proprio a capire il motivo. Se vuoi ti mostro l'errore che viene fuori?
  • Ti consiglio di scrivere così

    !string.IsNullOrWhiteSpace(TTempo.Text)

    per tutti i textbox.
  • oregon ha scritto:


    Ti consiglio di scrivere così

    !string.IsNullOrWhiteSpace(TTempo.Text)

    per tutti i textbox.
    Grazie mille, Funziona!
    Posso chiederti perchè era sbagliato come avevo scritto prima?
  • Perché il text della textbox non è null anche vuoto
Devi accedere o registrarti per scrivere nel forum
7 risposte