0
因此,我有一个应用程序具有共享一个数据网格的多个选项卡。我想弄清楚如何让datagrid每小时自动更新一次。每个选项卡都显示来自sql server的查询结果。所有选项卡都需要每小时更新一次,以及在将新项目添加到数据库之后。让我知道你是否需要更多信息。如何自动刷新一个数据网格上的多个选项卡
因此,我有一个应用程序具有共享一个数据网格的多个选项卡。我想弄清楚如何让datagrid每小时自动更新一次。每个选项卡都显示来自sql server的查询结果。所有选项卡都需要每小时更新一次,以及在将新项目添加到数据库之后。让我知道你是否需要更多信息。如何自动刷新一个数据网格上的多个选项卡
如果您使用WPF,只需将DataGrid绑定到共享DataSource(ObservableCollection)即可。每隔一段时间更新一次您的集合,并且DataGrid将自动更新。
XAML:
<DataGrid x:Name="DataGrid1" ItemsSource={Binding Path=SharedCollection, Mode=OneWay} .../>
<DataGrid x:Name="DataGrid2" ItemsSource={Binding Path=SharedCollection, Mode=OneWay} .../>
<DataGrid x:Name="DataGrid3" ItemsSource={Binding Path=SharedCollection, Mode=OneWay} .../>
代码背后:
public class View : Window
{
public View()
{
this.DataContext = new ViewModel();
}
}
视图模型:
public class ViewModel : INotifyPropertyChanged
{
public ObservableCollection<MyType> SharedCollection = new ObservableCollection<MyType>();
...
...
public void UpdateData()
{
SharedCollection.Clear();
var data = GetMyDataFromSQLQuery();
foreach(var item in data)
{
SharedCollection.Add(item);
}
}
}