Example #1
0
        /// <summary>
        /// Occurs when RunWorkerAsync is called.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The <see cref="DoWorkEventArgs"/> instance containing the event data.</param>
        private void LoadVendorsBackground(object sender, DoWorkEventArgs e)
        {
            IVendorRepository vendorRepository = new VendorRepository();

            BackgroundWorker source = (BackgroundWorker)sender;

            var results = vendorRepository.GetAllVendors();
            int index   = 0;

            foreach (var item in results)
            {
                Application.Current.Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate { }));
                source.ReportProgress(++index, item);
            }
        }