c#图表绑定源代码更新

c#图表绑定源代码更新,c#,data-binding,charts,C#,Data Binding,Charts,我对bindingsources不太熟悉。简短的问题是:如何将图表绑定到数据源,以便在BindingNavigator更改时图表显示更新 我长篇大论的解释如下: 我有一个数据源已经导入到C#VS 2010 Express中。这是一个相关数据集,其中有两个表(资产、历史价格),其中每个资产都有一个相关历史价格表 我只需将数据源拖放到表单中,就可以在BindingNavigator的帮助下创建所需的视图。我还将Historical_prices表的DataGrid视图拖到表单中,并在单击Bindin

我对bindingsources不太熟悉。简短的问题是:如何将图表绑定到数据源,以便在BindingNavigator更改时图表显示更新

我长篇大论的解释如下:

我有一个数据源已经导入到C#VS 2010 Express中。这是一个相关数据集,其中有两个表(资产、历史价格),其中每个资产都有一个相关历史价格表

我只需将数据源拖放到表单中,就可以在BindingNavigator的帮助下创建所需的视图。我还将Historical_prices表的DataGrid视图拖到表单中,并在单击BindingNavigator时进行更新

然后,我在表单中创建了一个图表,我选择了数据源作为历史价格BindingSource。它装载

我希望在BindingBavigator发生更改时,能够用不同的历史价格更新图表,但目前没有。有什么想法吗

我尝试添加
chart1.Update()在BindingNavigatorSaveItem中单击事件,但不使用骰子


非常感谢

绑定需要实际进行数据绑定,而不是仅仅分配。您所做的基本上是创建了一个一次性绑定,该绑定在初始化或赋值期间的运行时发生

这意味着您的目标(图表)仅在视图创建源(数据源)时更新一次

你要找的是双向装订。因此,只要源被修改,目标就会被更新

要实现这一点,通常需要使用双向绑定语法将数据源绑定到TargetProperty

<Toolkit:Chart x:Name="myChart" DataSource="{Binding historical_PricesDataSource, Mode=TwoWay}" />

有关INotifyPropertyChanged中的更多信息:

非常感谢您。。。我真的很感激能在任何xaml内容控制ie框架、边框、堆栈面板、网格中使用完整的解释工具包代码。。。。您必须在文件的顶部注册工具包。如果您使用winRT或WPF搜索等效的名称空间,那么这里有一个链接,指向如何在xaml for Silverlight中注册名称空间
    // This method is called by the Set accessor of each property. 
    // The CallerMemberName attribute that is applied to the optional propertyName 
    // parameter causes the property name of the caller to be substituted as an argument. 
    private void NotifyPropertyChanged([CallerMemberName] String propertyName = "")
    {
        if (PropertyChanged != null)
        {
            PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
        }
    }