Mam konwerter wartości, który formatuje numery (nie mogę jeszcze używać SP1 jeszcze niestety). Działa dobrze, dopóki nie uzyska procentu.Jak można uciec z pojedynczego cudzysłowu w dosłownym języku znacznika rozszerzenia XAML?
Oto przykład:
<TextBlock Text="{Binding Path=PercentageComplete,
Converter={StaticResource NumberFormatter},
ConverterParameter='0.00 %'}" />
Niestety dla mnie, kiedy Double.ToString
widzi charakter procentowy, to mnoży przez liczbę 100. W moim przypadku, numer jest już pewien procent i nie ma potrzeby konwersji.
W języku C#, byłoby to osiągnąć poprzez ucieczkę charakter %
z jednym cytatem:
(99.99).ToString("0.00 %") // gives -> "9999 %"
(99.99).ToString("0.00 '%") // gives -> "99.99 %"
Niestety, nie mogę użyć pojedynczego cudzysłowu w ConverterParameter
w powyższym rozszerzenie XAML znaczników. Czy istnieje sposób na ucieczkę? Próbowałem podwajać pojedyncze cudzysłowy i używać odwrotnego ukośnika, ale oba nie udało się skompilować.
Fantastyczne. Działa jak urok, ale ja wolę ten wariant, który działa również (i próbowałem tylko po twojej sugestii): 'ConverterParameter = '0.00 "%''. Wielkie dzięki. –
Warto również zauważyć, że wspomniany wariant nie powoduje, że VS zaznacza kolejny kod na czerwono, mimo że kompiluje się dobrze. –
Jak na ironię, miałem coś podobnego, ale pomyślałem, że lepiej będzie działać na odwrót, więc go zmieniono :) –