Visual Basic .NET ha cambiado la forma de trabajar con las cadenas de texto con respecto a las versiones anteriores. Todo el menejo de estas nuevas características se encuentran en la clase System.String. Ahora cada variable de texto es un objeto de tipo String.
Todas las clases de Visual Basic .NET tienen un método .ToString para mostrar una su contenido en formato texto.
En visual basic.net tenemos dos formas de trabajar con las variables de texto o string:
- Utilizando las viejas funciones que conocemos desde “siempre” como left, right, trim, replace, etc.
- Utilizar los nuevos métodos de la clase System.String de .NET
Para utilizar las funciones de de cadenas de visual basi “tradicional” (por llamar de alguna manera a las versiones anteriores a .NET) están disponibles en el espacio de nombre Microsoft.VisualBasic por ejemplo:
microsoft.VisualBasic.Left("Text1", 5)
veamos algunos metodos y propiedades del objeto String
Propiedades

Métodos

y ahora veamos algunos ejemplos en los que utilizaremos algunas de estas propiedades y métodos:
Para averiguar la longitus de un texto usamos la propiedad Length:
dim texto1 as string = "un texto cualquiera"
msgbox(texto1.Length) 'Mostrará 19
'También podemos hacerlo directamente sobre el texto
msgbox("otro texto cualquiera".Length) 'Mostrará 21
Para alinear el contenido de una cadena de texto usamos PadLeft o PadRight
Estos dos métodos son nuevos y no tienen equibalencia en visual basic tradicional. Ellos aumentan la cadena alineando su contenido hacia la izquierda o derecha.
Para ver el siguiente ejemplo en funcionamiento solo copia el código en el evento Load de un formulario y hazlo correr.
Te voy a explicar brevemente que es lo que hace: primero crea un objeto textbox y lo parametriza para poder mostrar varias lineas con la propiedad multiline en True. Hace que el textbox ocupe todo el formulario con la propiedad Dock en Fill y como lo que queremos ver es la alinación de las cadenas de texto es muy importante usar una fuente monoespaciada como Courrier New. Esto es muy importante porque si usamos una fuente que no es monoespaciada no veremos los textos correctamente alineados. Ah… y la constante vbCrlf representa un carácter de retorno de carro combinado con un carácter de avance de línea para las funciones de impresión y visualización.
Por último, como el control textbox1 no lo estoy creando en modo diseño (arrastrando el control y soltandolo sobre el formulario) sino, que lo creo mediante codigo, no podré verlo a menos que lo agregue a la lista de control del formulario. Para ello utilizo la última linea del codigo del ejemplo.
Dim textbox1 As New TextBox
textbox1.Multiline = True
textbox1.Dock = DockStyle.Fill
textbox1.ScrollBars = ScrollBars.Vertical
textbox1.Font = New System.Drawing.Font("Courier New", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
For i As Integer = 1 To 100
textbox1.Text &= i.ToString.PadLeft(4).PadRight(10, "-") & "Es la mitad de " & (i * 2).ToString.PadLeft(3) & vbCrLf
Next
Me.Controls.Add(textbox1)
Dando formato a los números
Utilizando la clase String podemos dar formato a los numeros, como se muestra en el siguiente ejemplo:
Dim numero As Double
numero = 10580.65
Dim resultado As String
resultado = numero.ToString("G") ' 10580.65
resultado = numero.ToString("N") ' 10.580,65
resultado = numero.ToString("E") ' 1058065E+004
resultado = numero.ToString("000,000.00") ' 010.580,65
resultado = numero.ToString("###,##0.00") ' 10.580,65
numero = 0.63
resultado = numero.ToString("P") ' 63,00 %
resultado = numero.ToString("##0.00%") ' 63,00%
resultado = numero.ToString("##0%") ' 63%