> se puede dar formato a un TextBox de la siguiente manera "22 Sep 08", la
> primera letra del mes tiene que estar en mayúsculas, con el DateTimePicker
> si se puede dar formato (dd MMM yy), pero no se como hacer para colocar la
> primera letra del mes en mayúsculas.
Hola, Ariel:
Simplemente tienes que pasar el carácter a mayúscula:
' Obtenemos la fecha
'
Dim fecha As DateTime = Convert.ToDateTime(Me.DateTimePicker1.Text)
' Formateamos la fecha
'
Dim cadenaFecha As String = String.Format("{0:dd MMM yy}", fecha)
' Obtenemos el carácter correspondiente a la primera letra del mes,
' que será el carácter que se encuentre en la cuarta posición
' de la cadena formateada.
'
Dim m As Char = cadenaFecha.Chars(3)
' Pasamos a mayúscula el carácter extraído.
'
TextBox1.Text = cadenaFecha.Replace(m, Char.ToUpper(m))
Un saludo
--
Enrique Martínez
[MS MVP - VB]
Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.
Mientras encuentras otra solución, podría servirte la siguiente:
' Obtenemos el carácter correspondiente a la primera
' letra del mes.
'
Dim m As Char = cadenaFecha.Chars(3)
' Escribimos de nuevo la cadena.
'
cadenaFecha = cadenaFecha.Substring(0, 3) & _
Char.ToUpper(m) & cadenaFecha.Substring(4, 5)
TextBox1.Text = cadenaFecha
ok, gracias SoftJaen, pero si modifico la fecha no se ajusta a su nuevo
formato
No entiendo lo que me quieres decir, porque yo no he dicho que modifiques la
fecha. El valor de la variable «cadenaFecha» tendrá el formato dd MMM yy: 24
Sep 2008, para el día de hoy.
Hola:
Prueba esto
Private Sub Form1_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Load
Me.DateTimePicker1.Format = DateTimePickerFormat.Custom
Me.DateTimePicker1.CustomFormat = "dd MMM yy"
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button1.Click
Me.Label1.Text = Cadena.Frase(Me.DateTimePicker1.Text)
End Sub
Public Shared Function Frase(ByVal MiCadena As String) As String
Return StrConv(MiCadena, vbProperCase)
End Function
Espero que te sirva
Un saludo desde Bilbo
Carlos
Hola Carlos, me da error en la siguiente linea:
Me.Label1.Text = cadena.Frase(Me.DateTimePicker1.Text)
en la palabra Cadena
> me da error en la siguiente linea:
>
> Me.Label1.Text = cadena.Frase(Me.DateTimePicker1.Text)
>
> en la palabra Cadena
Elimina la palabra «Cadena» y asunto resuelto. :-)
Se entiende que Carlos tiene la función compartida «Frase» en una clase
llamada «Cadena».