Controllo

lunedì 02 dicembre 2013 - 09.21
Tag Elenco Tags  C#

pelling10 Profilo | Junior Member

Salve a tutti, mi accingo da poco ad avvicinarmi al linguaggio C# .net,
avrei bisogno di un vostro autorevole consiglio:
Ho creato un form con dei campi di testo ed un bottone "salva" con cui salvo i dati.
Al click del bottone "salva", prima di procedere al salvataggio dei dati ho bisogno di testare se tutti i campi sono popolati; se lo sono salvo, altrimenti avviso l'utente con dei messaggi.
Questo controllo devo farlo sia al salvataggiodei dati e sia all' uscita dal form, quindi ho creato la seguente funzione;

private void controlli()
{
if(textbox1.text == "")
{
messagebox.show("inserisci dati in campo 1");
}
if(textbox2.text == "")
{
messagebox.show("inserisci dati in campo 2");
}
}
Il problema è che quando il campo è vuoto viene visualizzato il messaggio ma al click sull' ok del messaggio il codice continua ed effettua il salvataggio,
Ho provato anche a inserire il return nella funzione ma ho sempre lo stesso problema.
Esiste qualcosa per cui quando enta nel controllo di vuoto esce altrimenti prosegue?
Grazie in anticipo!

AntCiar Profilo | Expert

Ciao.

Fai in questo modo:


private bool controlli()
{
bool res = true;

if(textbox1.text == "")
{
res = false;
messagebox.show("inserisci dati in campo 1");
}
if(textbox2.text == "")
{
res = false;
messagebox.show("inserisci dati in campo 2");
}
return res;
}


poi sul bottone salva scrivi questo codice:

if (controlli())
{
... istruzioni per il salvataggio
}


Ciao
Cristian Barca

pelling10 Profilo | Junior Member

Ciao, grazie per l'aiuto...
Ho provato funziona,
pero vorrei che se tutti i campi sono vuoti uscisse solo il primo messaggio, al popolamento del primo, uscisse solo il secondo e cosi via....
si può fare?
grazie!

AntCiar Profilo | Expert

private bool controlli()
{
bool res = true;

if(textbox1.text == "")
{
res = false;
messagebox.show("inserisci dati in campo 1");
}
else if(textbox2.text == "")
{
res = false;
messagebox.show("inserisci dati in campo 2");
}
return res;
}
Cristian Barca

pelling10 Profilo | Junior Member

Funziona PERFETTAMENTE!!!! Grazie MILLE!!!!

Vinsent Profilo | Senior Member

Occhio...se nella textbox si digitano SOLO uno o più "spazio" il controllo viene scavalcato....
Ti consiglio di usare la funzione Trim per eliminare tutti gli spazi iniziali e finali:
http://msdn.microsoft.com/it-it/library/t97s7bs3(v=vs.110).aspx
Ciao
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5