Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Formato Fecha de TextBox o DateTimePicker

1,044 views
Skip to first unread message

Ariel

unread,
Sep 23, 2008, 1:25:50 PM9/23/08
to
Hola amigos, 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.
Gracias y saludos.


SoftJaén

unread,
Sep 23, 2008, 2:07:59 PM9/23/08
to
"Ariel" preguntó:

> 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.

SoftJaén

unread,
Sep 23, 2008, 2:20:25 PM9/23/08
to
Olvídate del método «Replace» porque vas a tener problemas con el més de
Enero, ya que las dos "e" estarían en mayúscula (EnE).

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

Ariel

unread,
Sep 23, 2008, 8:02:42 PM9/23/08
to
SoftJaén vient de nous annoncer :

> Olvídate del método «Replace» porque vas a tener problemas con el més de
> Enero, ya que las dos "e" estarían en mayúscula (EnE).
>
> 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


SoftJaén

unread,
Sep 24, 2008, 12:54:10 AM9/24/08
to
"Ariel" escribió:

>
> 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.

lucky

unread,
Sep 29, 2008, 3:30:58 AM9/29/08
to

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

Ariel

unread,
Sep 30, 2008, 6:57:42 PM9/30/08
to
lucky a utilisé son clavier pour écrire :

Hola Carlos, me da error en la siguiente linea:

Me.Label1.Text = cadena.Frase(Me.DateTimePicker1.Text)

en la palabra Cadena


SoftJaén

unread,
Oct 1, 2008, 9:05:14 AM10/1/08
to
"Ariel" preguntó:

> 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».

0 new messages