2012-07-14 18 views
5

Sono ancora nuovo in C# e mi chiedevo come si avrebbero più cose quando una condizione if viene soddisfatta. per esempio.'if' istruzioni

int number = (Convert.ToInt32(textbox1.text)); 
    if (number == 1) 
     textbox2.Text = "1";     
     number2 = 33;   
     textbox3.text = (Convert.ToString(number2)); 

Quando faccio qualcosa del genere, non completa tutti i risultati desiderati.

P.S Se questo non è il sito giusto per le domande per principianti come questo qualcuno sa dove posso andare? (dopo una ricerca ovviamente).

+0

Solo la prima dichiarazione dopo la 'verrà eseguito if'. È necessario aggiungere tutte le istruzioni in un ambito di blocco usando '{}' attorno a loro in modo che possano essere eseguite tutte. – Oded

+0

Si dovrebbe * davvero * farsi strada attraverso la [guida ufficiale] (http://msdn.microsoft.com/en-us/library/67ef8sbd) o qualche altro tutorial. (Ciò detto, per quanto riguarda le domande per principianti, va bene.) – millimoose

+1

Nessun problema, siamo a posto con le domande per principianti. Mostraci solo che hai fatto uno sforzo e formatta bene la tua domanda, incluso il codice pertinente, e amiamo rispondere alla tua domanda (in questo modo otterrai anche un paio di voti positivi :). –

risposta

7
if (number == 1) 
{ 
    textbox2.Text = "1";     
    number2 = 33;   
    textbox3.text = (Convert.ToString(RSP)); 
} 

Aggiungi parentesi alle istruzioni di gruppo.

senza le parentesi, il se-dichiarazione riguardano solo la dichiarazione molto prossimo: textbox2.Text = "1";, e sarà sempre essere eseguire le altre dichiarazioni, a prescindere dal se-dichiarazione.

+1

Per metterli in un ambito. – Oded

+2

La prossima affermazione, non la riga successiva, puoi mettere la frase subito dopo l'if. – WDRust

1
int number = (Convert.ToInt32(textbox1.text)); 
if (number == 1) 
{ 
    textbox2.Text = "1";     
    number2 = 33;   
    textbox3.text = (Convert.ToString(RSP)); 
} 

Utilizzare parentesi graffe. Questo dimostra il blocco di codice da eseguire sul IF

2

È necessario utilizzare un blocco, utilizzando i { e } personaggi ...

int number = (Convert.ToInt32(textbox1.text)); 
if (number == 1) 
{ 
    textbox2.Text = "1";     
    number2 = 33;   
    textbox3.text = (Convert.ToString(RSP)); 
} 
2

È necessario avvolgere il tutto tra parentesi graffe {}

int number = Convert.ToInt32(textbox1.text); 
if (number == 1) 
{ 
    textbox2.Text = "1";     
    number2 = 33;   
    textbox3.text = Convert.ToString(RSP); 
} 

Anche le parentesi attorno alle funzioni di conversione non sono necessarie. Non influisce sulla funzionalità, ma solo sulla manutenzione generale.

2

Se le istruzioni sotto l'istruzione if sono più di 1, sono necessarie le parentesi.

int number = (Convert.ToInt32(textbox1.text)); 
    if (number == 1) 
    { 
     textbox2.Text = "1";     
     number2 = 33;    
     textbox3.text = (Convert.ToString(RSP)); 
    } 
1

Avvolgere il blocco di codice tra parentesi graffe ({}).

int number = (Convert.ToInt32(textbox1.text)); 
if (number == 1) 
{ 
    textbox2.Text = "1"; 
    number2 = 33; 
    textbox3.text = (Convert.ToString(number2)); 
} 
0

vi siete persi l'ambito {}

int number = (Convert.ToInt32(textbox1.text)); 
if (number == 1) 
{ 
    textbox2.Text = "1"; 
    number2 = 33; 
    textbox3.text = (Convert.ToString(number2)); 
} 

O

int number = int.Parse(textbox1.text); 
if (number == 1) 
{ 
    textbox2.Text = "1"; 
    number2 = 33; 
    textbox3.text = number2.ToString(); 
    //the above line can also be written as follows 
    //textbox3.text = "" + number2; 
} 

Entrambi funzionano bene

Problemi correlati