2009-07-29 13 views
6

Quiero formatear el valor de mi control deslizante para que sea el formato 00:00. El siguiente código funcionó para mí, pero lo que quería era el formato 00:00. Estoy buscando una solución XAML total. Sé que puedo escribir un convertidor para esto fácilmente, pero me pregunto si hay alguna forma de StringFormat para hacerlo.XAML StringFormat para formatear un valor doble

Text="{Binding Value, ElementName=slider,StringFormat=\{0:00.00\}}" 

Mi pregunta aquí es cómo puedo obtener colon ':' en lugar de dot '.' ?

Respuesta

2

Puede utilizar las opciones de formato de cadena predeterminadas en StringFormat como en el código de C# normal. Eche un vistazo a this page, probablemente encontrará lo que necesita.

+0

gracias , pero sé que puedo usar cualquiera de las expresiones de formato de cadena. Pero no puedo obtener una solución para dos puntos: 'Dado que el formato de doble valor está esperando un punto'. ' algun lado. –

2

No creo que haya una solución real para esto, pero si puedes multiplicar tus valores del control deslizante por 100, puedes usar 00:00 como tu cadena de formato.

11

Si lo que desea es poner un símbolo : en la cadena de formato, a continuación, a escapar con barras invertidas:

Text="{Binding Value, ElementName=slider,StringFormat=\{0:00\\:00\}}" 

pero creo que esto es lo que quiere hacer:

<Slider Name="slider" Width="500" Height="30" Maximum="100" Minimum="0" /> 
<TextBlock Text="{Binding Path=Value, ElementName=slider, StringFormat={}{0:00\\:00}}" /> 
Cuestiones relacionadas