Salve ragazzi ho un nuovo problema tra le mani che vi espongo di seguito:
mi trovo ad avere una form con una checkbox e una decina di textbox, ora la checkbox serve per settare la proprietà "readonly" di tutte le textbox, quindi se "checked" saranno in sola lettura mentre se "unchecked" il contrario e fin qui tutto ok, il mio problema sorge nel momento in cui devo settarle tutte "readonly = True" ma solo se esse contengono 8 caratteri al loro interno, quindi dovrei avere un controllo che, nel qualcaso una di esse non soddisfi questa condizione, mi lasci la checkbox con proprietà "Enable = False" o che comunque non le faccia cambiare stato. E' qualche settimana che faccio delle prove ma non riesco a trovare una soluzione. La mia idea è stata quella di assegnare ad ogni textbox un ascoltatore su textchanged e verificare se essa contenesse 8 caratteri e fin qui ok ma poi come faccio a verificare che ognuna ne abbia 8 per sbloccare il checkbox? Se utilizzo un'unica funzione come ascoltatore e uso ad esempio:
il problema ovviamente è che se vado a modificare una textbox scrivendo 5 caratteri e poi ne modifico un'altra scrivendone 8 la condizione risulta vera e me la sblocca... Ho pensato anche di creare una sorta di "memoria" con un array di stringhe dove vado ad inserire il nome della textbox quando essa non ha 8 caratteri al suo interno, se invece li ha non la inserisco o la cancello, se presente, e alla fine verifico che l'array sia vuoto per sbloccare la checkbox, ma non mi sembra una soluzione adatta...codice:if sender.TextLength = 8 Then checkbox.enabled = True End If
Che mi proponete voi che siete più esperti?
Grazie in anticipo a tutti