This is a migrated thread and some comments may be shown as answers.

BarSeries Template Static resource bug

1 Answer 58 Views
ChartView
This is a migrated thread and some comments may be shown as answers.
kity
Top achievements
Rank 2
kity asked on 27 May 2013, 01:33 PM

If I do not use resource work. But why if I use static resource binding for template give me error on Initialization()

<UserControl.Resources>
       
 

<

 

 

conv:NotBoolToVisibilityConverter x:Key="NotBoolToVisibilityConverter" />

 

 

<conv:BoolToVisibilityConverter x:Key="BoolToVisibilityConverter" />

 

 

<SolidColorBrush x:Key="ColorNormal" Color="LimeGreen" />

 

 

<SolidColorBrush x:Key="ColorLow" Color="Gold" />

 

 

<SolidColorBrush x:Key="ColorHigh" Color="Red" />

 
        <chartView:ChartSeriesLabelDefinition x:Key="TemplateBarSeriesNormal" >
            <chartView:ChartSeriesLabelDefinition.Template>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <TextBlock Text="{Binding DataItem.CalcValue, Mode=TwoWay}" Foreground="{StaticResource ColorNormal}" Visibility="{Binding DataItem.ShowLabel, Mode=TwoWay, Converter={StaticResource BoolToVisibilityConverter}}" />
                    </StackPanel>
                </DataTemplate>
            </chartView:ChartSeriesLabelDefinition.Template>
        </chartView:ChartSeriesLabelDefinition>
 
 
    </UserControl.Resources>
     
     
     <Grid x:Name="LayoutRoot">
      
      
       <chartView:BarSeries ItemsSource="{Binding AlarmGroups, Mode=TwoWay}" ValueBinding="Value" CategoryBinding="NameFormat" CombineMode="Stack" ShowLabels="True" FontFamily="Segoe UI" FontSize="10" BorderThickness="1" BorderBrush="Black"
                                 >
 
                 
                 
                <chartView:BarSeries.LabelDefinitions>
                    <chartView:ChartSeriesLabelDefinition HorizontalAlignment="Right" VerticalAlignment="Center" Template="{Binding Source={StaticResource TemplateBarSeriesNormal}}">
                         
                        <!-- OLD VERSION DataItem bug is fix
                        <chartView:ChartSeriesLabelDefinition.Template>
                            <DataTemplate>
                                <StackPanel Orientation="Horizontal">
                                    <TextBlock Text="{Binding DataItem.CalcValue, Mode=TwoWay}" Foreground="{StaticResource ColorNormal}" Visibility="{Binding DataItem.ShowLabel, Mode=TwoWay, Converter={StaticResource BoolToVisibilityConverter}}" />
                                </StackPanel>
                            </DataTemplate>
                        </chartView:ChartSeriesLabelDefinition.Template>
                        -->
                         
                    </chartView:ChartSeriesLabelDefinition>
                </chartView:BarSeries.LabelDefinitions>
 
                <chartView:BarSeries.PointTemplate>
                    <DataTemplate>
                        <Rectangle Fill="{StaticResource ColorNormal}" />
                    </DataTemplate>
                </chartView:BarSeries.PointTemplate>
                                           
            </chartView:BarSeries>
      
     </Grid>



See this part of code that is in comment and property

 

Template="{Binding Source={StaticResource TemplateBarSeriesNormal}}".
 
<chartView:ChartSeriesLabelDefinition HorizontalAlignment="Right" VerticalAlignment="Center" Template="{Binding Source={StaticResource TemplateBarSeriesNormal}}">

 

 

 

                        

1 Answer, 1 is accepted

Sort by
0
Petar Kirov
Telerik team
answered on 29 May 2013, 08:47 PM
Hi,

This should do the trick:
<UserControl.Resources>
    <!--...-->
 
    <DataTemplate x:Key="TemplateBarSeriesNormal">
        <StackPanel Orientation="Horizontal">
            <TextBlock Text="{Binding DataItem.CalcValue, Mode=TwoWay}"
            Foreground="{StaticResource ColorNormal}"
            Visibility="{Binding DataItem.ShowLabel, Mode=TwoWay,
             Converter={StaticResource BoolToVisibilityConverter}}" />
        </StackPanel>
    </DataTemplate>
</UserControl.Resources>
 
<Grid x:Name="LayoutRoot">
 <chartView:RadCartesianChart >
   <chartView:RadCartesianChart.Series>
      <chartView:BarSeries>
         <chartView:BarSeries.LabelDefinitions>
            <chartView:ChartSeriesLabelDefinition
         HorizontalAlignment="Right"
             VerticalAlignment="Center"
             Template="{StaticResource TemplateBarSeriesNormal}">
            </chartView:ChartSeriesLabelDefinition>
         </chartView:BarSeries.LabelDefinitions>
 
I hope this helps.

Regards,
Petar Kirov
Telerik

Explore the entire Telerik portfolio by downloading Telerik DevCraft Ultimate.

Tags
ChartView
Asked by
kity
Top achievements
Rank 2
Answers by
Petar Kirov
Telerik team
Share this question
or