我在玩Silverlight應用程序中的進度條自定義。我想要達到的是讓進度條標籤以下列格式顯示其狀態: 「值/最大值」。所以,用戶會看到什麼是當前值,什麼是最大可能值。下面是我用進度條樣式:通過綁定自定義進度條標籤文本
<Style x:Key="ProgressBarStyle" TargetType="ProgressBar">
<Setter Property="Width" Value="97.21" />
<Setter Property="Height" Value="19" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ProgressBar">
<Canvas x:Name="LevelField" Width="99" Height="21">
...
<TextBlock ... DataContext="{TemplateBinding Value}" Text="{Binding Converter={StaticResource DecNumberToStringConverter}}"/>
</Canvas>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
我想實現這一點的方法,是有一個價值轉換,將轉換成電流值和最大可能爲正確的琴絃。如果它的寫法如上所述,它確實工作正常。不過,我也需要爲轉換器提供ConverterParameter,但不知道如何製作它。當我這樣寫時:ConvertParameter = {綁定最大值},它顯示開始時的錯誤,在TextBlock中找不到Text屬性。我也試圖將DataContext設置爲{RelativeSource Self},但它沒有顯示DataContext屬性未找到的錯誤。
如何使所描述的進度欄標籤正確?