如何使用wpf中的通用列表数据绑定将点绑定到wpf区域图表

时间:2013-09-10 13:09:45

标签: c# wpf xaml wpftoolkit

我正在使用c#处理WPF。我正在尝试使用WPF Toolkit显示带有值的WPF区域图表。 我已经遵循了CodeProject的知识库文章并将其写成了,

<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"         
        xmlns:DV="clr-namespace:System.Windows.Controls.DataVisualization;assembly=System.Windows.Controls.DataVisualization.Toolkit"
        xmlns:DVC="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" x:Class="WpfChart.MainWindow"         
        Title="MainWindow" Height="621.053" Width="873.684">
    <ScrollViewer HorizontalScrollBarVisibility="Auto" 
        VerticalScrollBarVisibility="Auto" Margin="0,-28,0,28">
        <Grid Height="921">
            <DVC:Chart  x:Name="areaChart" Title="Chart Title" 
                VerticalAlignment="Top" Margin="33,73,24,0" Height="582" Background="White" >
               <DVC:AreaSeries DependentValuePath="Value" 
                IndependentValuePath="Key"  ItemsSource="{Binding}"
                IsSelectionEnabled="True" Title="Weeks of Gestation"></DVC:AreaSeries>

                <DVC:Chart.Palette>
                    <DV:ResourceDictionaryCollection>
                        <ResourceDictionary>
                            <Style x:Key="DataPointStyle" TargetType="Control">
                                <Setter Property="Background" Value="Firebrick" />
                                <Setter Property="BorderBrush" Value="Black" />


                            </Style>
                        </ResourceDictionary>

                    </DV:ResourceDictionaryCollection>
                </DVC:Chart.Palette>
                <DVC:Chart.Axes>
                    <!-- Add Horizontal and Vertical Axes-->
                    <DVC:LinearAxis ShowGridLines="True"
            Orientation="Y"
            Title="Y Axis Title"
            Interval="5" Maximum="45" Minimum="-5"
            Foreground="Black" 

            FontFamily="Arial Black"
            FontSize="16"
            FontWeight="Bold"
        />
                    <DVC:LinearAxis ShowGridLines="True"
            Orientation="X"
            Title="X-Axis Title"
            Interval="4" Minimum="0" Maximum="40"
            Foreground="Black" 

            FontFamily="Arial Black"
            FontSize="16"
            FontWeight="Bold"
        />
                </DVC:Chart.Axes>
            </DVC:Chart>
        </Grid>
    </ScrollViewer>
</Window>

我为初始化图表数据编写代码,如

private void LoadAreaChartData()
        {

            ((AreaSeries)areaChart.Series[0]).ItemsSource =
                new KeyValuePair<string, int>[]{
    new KeyValuePair<string, int>("3", 5)
    };
        }

但它没有将点映射到图表上。我需要将点映射到图表上,如

(X,Y) - (3,5)需要在x轴上的点3和y轴上的点5的交点处进行标记。如果我走错了方向,如何实现这一点请指导我。提前致谢。

0 个答案:

没有答案