2011-06-10 35 views
0

因此,我有一個應用程序具有共享一個數據網格的多個選項卡。我想弄清楚如何讓datagrid每小時自動更新一次。每個選項卡都顯示來自sql server的查詢結果。所有選項卡都需要每小時更新一次,以及在將新項目添加到數據庫之後。讓我知道你是否需要更多信息。如何自動刷新一個數據網格上的多個選項卡

回答

0

如果您使用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); 
     } 
    } 
} 
相關問題