2009-07-29 10 views
6

Chcę sformatować wartość suwaka jako format 00:00. Poniższy kod pracował dla mnie, ale chciałem mieć format 00:00. Szukam całkowitego rozwiązania XAML. Wiem, że mogę napisać konwerter do tego łatwo, ale zastanawiam się, czy istnieje jakikolwiek sposób StringFormat, aby to zrobić.XAML StringFormat do sformatowania wartości podwójnej

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

Moje pytanie brzmi: jak mogę uzyskać dwukropek ":" zamiast kropki ". ?

Odpowiedz

2

Możesz użyć domyślnych opcji formatowania ciągów w StringFormat, jak w zwykłym kodzie C#. Spójrz na this page, prawdopodobnie znajdziesz to, czego potrzebujesz.

+0

dzięki , ale wiem, że mogę używać dowolnego wyrażenia w formacie String. Ale coudlnt uzyska rozwiązanie dla dwukropka ":" Ponieważ formatowanie podwójnej wartości oczekuje kropki ". gdzieś. –

2

Nie sądzę, że istnieje prawdziwe rozwiązanie tego problemu, ale jeśli można pomnożyć wartości suwaka przez 100, można po prostu użyć 00:00 jako ciągu formatów.

11

Jeśli chcesz tylko umieścić : symbol w ciągu formatu, a następnie uciec z ukośniki:

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

Ale myślę, że to, co chcesz zrobić:

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