Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从其他窗口刷新ItemsSource_C#_Wpf_Datagrid_Itemssource - Fatal编程技术网

C# 从其他窗口刷新ItemsSource

C# 从其他窗口刷新ItemsSource,c#,wpf,datagrid,itemssource,C#,Wpf,Datagrid,Itemssource,我有一个应用程序,它有一个父窗口,上面有一些菜单,当菜单单击时,相应的usercontrol作为子窗口加载到父窗口中。父窗口在每次菜单单击时支持许多usercontrol,usercontrol停靠在父窗口中。我有一个用户控件,即Items master,用户可以从中添加项目并保存到数据库中,我有另一个usercontrol,它有一个datagrid,其中有一个Combobox列用于选择项目。这两个用户控件都停靠在父窗口上。当我将项目添加到项目主控中,但该产品在datagrid上不可用时。添加新

我有一个应用程序,它有一个父窗口,上面有一些菜单,当菜单单击时,相应的usercontrol作为子窗口加载到父窗口中。父窗口在每次菜单单击时支持许多usercontrol,usercontrol停靠在父窗口中。我有一个用户控件,即Items master,用户可以从中添加项目并保存到数据库中,我有另一个usercontrol,它有一个datagrid,其中有一个Combobox列用于选择项目。这两个用户控件都停靠在父窗口上。当我将项目添加到项目主控中,但该产品在datagrid上不可用时。添加新产品时,如何刷新datagrid Combobox列的项目源?

快速回答是:当数据被更改时,使用事件聚合器之类的东西在系统中传递消息,这样每个屏幕都可以重新加载各自的数据。更重要的部分是设计和构造应用程序,以允许视图有效地访问公共数据。查看类似MVVM的UI设计