6

i am trying to view the value of aces in my chart but i have the following error "'IndependentValue' member is not valid because it does not have a qualifying type name in chartinToolkit wpf "

this is my code

    <Window x:Class="WpfToolkitChart.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="1031" Width="855" xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit"  FlowDirection="RightToLeft">

<ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" Margin="0,-28,0,28">
    <Grid Height="500">

        <chartingToolkit:Chart  Name="lineChart" Title="Line Series Demo" VerticalAlignment="Top" Margin="33,6,6,0" Height="440" Foreground="DarkRed" FlowDirection="LeftToRight" FontFamily="CPalatineLinoType">
            <chartingToolkit:LineSeries  DependentValuePath="Value" IndependentValuePath="Key" ItemsSource="{Binding}" IsSelectionEnabled="True"/>

            <ToolTipService.ToolTip>
                <StackPanel Margin="2,2,2,2">
                    <ContentControl Content="{TemplateBinding IndependentValue}" FontSize="12"/>
                    <ContentControl Content="{TemplateBinding DependentValue}"   FontSize="12"/>
                </StackPanel>
            </ToolTipService.ToolTip>
        </chartingToolkit:Chart>
    </Grid>
</ScrollViewer>

please cany any one help me in this thanks :)

shaymaa adel
  • 85
  • 1
  • 1
  • 6

3 Answers3

22

Just in case someone lands here searching for the error message, I was getting it simply because I was mistakenly using x:Static instead of StaticResource to access a locally declared resource.

Hope this helps someone down the road.

dotNET
  • 33,414
  • 24
  • 162
  • 251
0

i had solved the problem by this code

<chartingToolkit:LineSeries.DataPointStyle>
    <Style TargetType="chartingToolkit:DataPoint">
        <Setter Property="Background" Value="#0077CC" />
        <Setter Property="BorderBrush" Value="White"/>
        <Setter Property="BorderThickness" Value="2"/>
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="chartingToolkit:LineDataPoint">
                    <Grid x:Name="Root" Opacity="1">
                        <ToolTipService.ToolTip>
                            <StackPanel Margin="2,2,2,2">
                                <ContentControl Content="{TemplateBinding IndependentValue}" ContentStringFormat="Date : {0}"/>
                                <ContentControl Content="{TemplateBinding DependentValue}" ContentStringFormat="Count : {0:###,###,###}"/>
                            </StackPanel>
                        </ToolTipService.ToolTip>
                        <Ellipse StrokeThickness="{TemplateBinding BorderThickness}" Stroke="{TemplateBinding BorderBrush}" Fill="{TemplateBinding Background}"/>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</chartingToolkit:LineSeries.DataPointStyle>
Community
  • 1
  • 1
shaymaa adel
  • 85
  • 1
  • 1
  • 6
  • 6
    If anyone doesn't understand this solution, it is because the question author tried to use a `TemplateBinding` outside of a `ControlTemplate`, where this special kind of binding is supposed to be used. This solution was therefore, to use it within a `ControlTemplate`. – Sheridan Sep 16 '21 at 09:47
0

Just incase someone needs glasses, like me..

Before (failing XAML)

<Setter Property="Command" Value="{x:Static local:Map:ZoomCommand}" />

After (fixed XAML)

<Setter Property="Command" Value="{x:Static local:Map.ZoomCommand}" />

I just needed to change the colon to a dot.

DefenestrationDay
  • 3,712
  • 2
  • 33
  • 61