figurati ... anche io sono alle prime armi :nonsifiniscemaidiimparare:
ho preferito dividere il tutto se no era complesso commentare.
codice:
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
'Controllo che il TextBox non sia vuoto
If Not String.IsNullOrWhiteSpace(Me.TextBox1.Text) Then
'dichiaro uno StringBuilder (serve ad accodare valori che saranno convertiti in stringa con .ToString())
Dim sb As New StringBuilder()
'ciclo per estrappolare tutti i caratteri della TextBox
For i As Integer = 0 To Me.TextBox1.Text.Length - 1
'prendo un carattere del testo della TextBox a partire dall'indice alla quale sono arrivato
Dim testoTextBox As String = Me.TextBox1.Text.Substring(i, 1)
'richiamo la corrispondenza del carattere (del textbox) con il carattere dell'enumerazione
Dim Caratteri As Carattere = [Enum].Parse(GetType(Caratteri), testoTextBox) 'passandoli il tipo (Caratteri) e la stringa (carattere della textBox) mi viene restituito un oggetto (caratteri) con lo stesso valore del carattere (textBox) ad esempio Caratteri.A o Caratteri.B ecc. ecc.
'una volta ottenuto il carattere dell'enumerazione ne ricavo la sua posizione come indice numerico (esempio se "A" allora sarà 0, se "B" allora sarà 1 ecc. ecc.)
Dim numeroCarattere As Integer = CInt(Carattere)
'una volta ottenuto l'indice faccio lo stesso con l'enumerazione Sostituti ma al contrario, cioè li passo l'indice ottenuto in precedenza per recuperare la stringa corrispondente
Dim sostituto As String = [Enum].GetName(GetType(Sostituti), numeroCarattere)
'"appendo" il nuovo carattere (sostituito) allo StringBuider
sb.Append(sostituto)
Next
Me.Label1.Text = sb.ToString() ' infine converto in stringa tutti i caratteri e li strivo sul TextBox
End If
End Sub