Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Loop for each tra più controlli form (VB)

    Intanto Ciao a tutti. Non so se è questo il luogo corretto per presentarsi visto che mi sono appena registrato.

    Passo ad esporvi il mio problema:
    Ho un form, con 10 pannelli. Ciascun pannello con 2 radio button.
    Vorrei ora creare un pulsante di reset, che imposti le proprietà radiobutton#.checked = false per ciascun radio button in ciascun pannello.
    Aggiungo poi che sono nuovo dell'ambiente (studente di economia che ha dato un misero esame su vb, esame che lo ha interessato parecchio).
    Ora io pensavo a qualcosa tipe un doppio ciclo for each, il primo per il pannello, il secondo per i radio button contenuti in esso. Tuttavia non ho idea di come settare l'insieme di riferimento per i due cicli (for each panel in ????). Qualcuno mi sa aiutare? Se c'è una soluzione più pulita dal punto di vista del codice sarei ad ogni modo molto felice di conoscerla. Grazie!

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    VB viene trattato nel forum apposito: Visual Basic e .NET Framework, dove sposterò questa discussione.

    E' necessario, comunque, indicare la versione per questo linguaggio, essendocene un'infinità.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Ah, ok, scusa! La versione del linguaggio è vb.net (uso vs 2010), quindi penso il .net framework 4.0.

  4. #4

    Solution

    Alla fine ho trovato una soluzione:
    For Each p In Me.Panel2.Controls
    If Mid(p.Name, 1, 5) = "Panel" Then
    For Each x In p.controls
    If Mid(x.Name, 1, 11) = "RadioButton" Then
    x.checked = False
    else if Mid(x.Name, 1, 8) = "CheckBox" Then
    x.checked = False
    End If
    Next x
    If CInt(Mid(p.name, Len(p.name), 1)) Mod 2 = 0 Then
    p.visible = False
    End If
    End If
    Next p.

    Grazie comunque =)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.