I am developing a WPF Master detail application. I would like to auto refresh my page every 5 secs. I have used a Dispatcher to achieve this. everything works fine, but the selected item is highlighted only for those 5 seconds, after 5 secs the default selected row is being displayed on the top replacing my selecteditem.
Dispatcher
I have tried setting the issynchronizedwithcurrentitem="False", but with this set to false, the selecteditem ( for Master-detail scenario) doesn't work.
issynchronizedwithcurrentitem="False"
this is what I have tried,
public partial class MainWindow : Window { WpfApplication1.PersonsEntities personsEntities; System.Windows.Data.CollectionViewSource personViewSource; System.Data.Objects.ObjectQuery<WpfApplication1.person> personQuery; public MainWindow() { InitializeComponent(); } private ObjectQuery<person> GetpersonQuery(PersonsEntities personsEntities) { var personQuery = personsEntities.person; return personQuery as ObjectQuery<person>; } private void Window_Loaded(object sender, RoutedEventArgs e) { DispatcherTimer dispatcherTimer = new DispatcherTimer(); dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick); dispatcherTimer.Interval = new TimeSpan(0, 0, 5); dispatcherTimer.Start(); } protected void dispatcherTimer_Tick(object sender, EventArgs e) { personsEntities = new WpfApplication1.PersonsEntities(); personViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("personViewSource"))); personQuery = this.GetpersonQuery(personsEntities); personViewSource.Source = personQuery.Execute(System.Data.Objects.MergeOption.AppendOnly); } }
kindly help.
Thanks
-Dharshini