Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Do While per somma contenuto TextBox
martedì 20 aprile 2004 - 08.59
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
wsaurim
Profilo
| Newbie
43
messaggi | Data Invio:
mar 20 apr 2004 - 08:59
Ciao gente,
come si può fare un loop all'interno del quale sommo tutti i contenuti delle mie textbox?
Ex. Sommare il contenuto di tutte le textbox da TextBox1 a TextBox24
Dim Somma as Integer=0
Dim i as Integer=1 ' contatore
Do
Somma=Somma+TextBox[i].Text
While i<24
Grazie!
Ciao, Auri
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mar 20 apr 2004 - 09:23
Ti faccio un esempio generale che fa la somma di tutte le TextBox contenute sulla tua form:
Dim somma As Integer
somma = 0
For Each a As Object In Me.Controls
If (a.GetType.Name = "TextBox") Then
somma = somma + Integer.Parse(CType(a, TextBox).Text)
End If
Next
Console.WriteLine(somma.ToString())
ciao
david
wsaurim
Profilo
| Newbie
43
messaggi | Data Invio:
mar 20 apr 2004 - 10:43
grazie Brainkiller,
io dovrei, sullo stesso form, sommare due tipi di textbox
TextCosto1V -> TextCosto24V sul campo TextSommaV
TextCosto1N -> TextCosto24N sul campo TextSommaN
... help :-S
Grazie!
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mar 20 apr 2004 - 17:40
Io ti ho fatto un esempio generico ora con un po' di inventiva ci puoi arrivare anche tu.
Dentro il ciclo con l'istruzione:
CType(a, TextBox).Name
accedi al nome dell'oggetto. Avendo il nome puoi usare il metodo .IndexOf per cercare una stringa all'interno di un'altra. Quindi puoi fare un If e partizionare il flusso e quindi sommare contemporaneamente i valori di alcune textbox (quelle hanno nel nome la lettera V) e quelle che hanno la N, quindi:
Dim nome as string
nome=CType(a, TextBox).Name
if nome.IndexOf("V")<>-1 then
' FAI LA SOMMA DEI VALORI DELLE TEXTBOX V
elseif nome.IndexOf("N")<>-1 then
' FAI LA SOMMA DEI VALORI DELLE TEXTBOX N
end if
ciao
david
wsaurim
Profilo
| Newbie
43
messaggi | Data Invio:
mar 20 apr 2004 - 18:37
grazie 1000,
solo ora mi sono accorto che il tutto non funzionava perchè i controlli sono interni ad un Panel ed una GroupBox!
cmq funziona!
grazie again ;P
Auri
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mar 20 apr 2004 - 21:57
Eh si, in quel caso invece che usare Me.Controls devi usare GroupBoxName.Controls se no non li vedi.
ciao
david
wsaurim
Profilo
| Newbie
43
messaggi | Data Invio:
gio 22 apr 2004 - 09:21
posto il risultato, magari può tornare utile in futuro ;)
Form che contiene un panel (Panel1) al cui interno ci sono N GroupBox all'interno dei quali ci sono le TextBox.
Dim g As GroupBox
For Each g In Me.Panel1.Controls 'ciclo su tutti i groupbox
If (g.GetType.Name = "GroupBox") Then
MsgBox(CType(g, GroupBox).Name)
Dim t As Object
For Each t In g.Controls 'ciclo sulle textbox
If (t.GetType.Name = "TextBox") Then
Dim nome As String
nome = CType(t, TextBox).Name
MsgBox(CType(t, TextBox).Name)
End If
Next
End If
Next
Torna su
Stanze Forum
Elenco Threads
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 !