在从一个UI(在网络上)更新数据后,如何在其他UI上重新加载数据并保持关系
本文关键字:数据 UI 关系 新加载 其他 加载 一个 网络 更新 | 更新日期: 2023-09-27 17:49:18
当我将MySql数据库的实体数据模型添加到WPF应用程序和为父和子表创建的CollectionViewSource时,如:
<CollectionViewSource x:Key="topicmainViewSource" d:DesignSource="{d:DesignInstance {x:Type dbMRCPe:topicmain}, CreateList=True}"/>
<CollectionViewSource x:Key="articlesRelatedViewSource" Source="{Binding topicsublev1, Source={StaticResource topicmainViewSource}}"/>
,并创建一个DataContext到一个网格,并绑定到radgridview,如
<Grid Name="maingrid" DataContext="{StaticResource topicmainViewSource}">
<telerik:RadGridView x:Name="TopicMaingridview" DataMember="idTopicMain" ItemsSource="{Binding}" />
<telerik:RadGridView x:Name="articlesRelatedRadGridView" ItemsSource="{Binding Source={StaticResource articlesRelatedViewSource}}" />
</Grid>
这是在cs
加载数据的代码dbMRCPe.dbmrcpnephrologyEntities ctx = new dbMRCPe.dbmrcpnephrologyEntities();
private void Window_Loaded(object sender, RoutedEventArgs e)
{
ctx = new dbMRCPe.dbmrcpnephrologyEntities();
System.Windows.Data.CollectionViewSource topicmainViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("topicmainViewSource")));
// Load data by setting the CollectionViewSource.Source property:
topicmainViewSource.Source = ctx.topicmains;
}
问题:如果用户在运行时将数据添加到gridview,如果在运行时使用的刷新按钮没有两个网格之间的关系,如何将数据重新加载到其他用户界面?
感谢大家在我之后解决了这个问题
通过添加新的引用到数据上下文,如
private void reloadbtn_Click(object sender, RoutedEventArgs e)
{
dbMRCPe.dbmrcpnephrologyEntities ctx2 = new dbMRCPe.dbmrcpnephrologyEntities();
ctx = ctx2;
topicmainViewSource.Source = ctx.topicmains;
}
如果我使用topicmainViewSource。来源= ctx. topic干线;它不会直接加载新数据我还想在代码