Torna al Thread

public class AccViewModel: ViewModel { public Referti Referti { get; set; } public Referto _selectedReferto = null; //private BackgroundWorker bw = new BackgroundWorker(); //public BackgroundWorker BackGroundWorker //{ // get { return bw; } // set { bw = value; } //} public Referto SelectedReferto { get { return _selectedReferto; } set { _selectedReferto = value; NotifyPropertyChanged("SelectedReferto"); } } private static System.Windows.Threading.Dispatcher _dispatcher = null; public static System.Windows.Threading.Dispatcher Dispatchet { get { return _dispatcher; } set { _dispatcher = value; } } private delegate void Datadelegate(); System.Threading.Thread tx; public delegate void updateData(); updateData d; public AccViewModel() { //Codice per il BAckGroundWorker //bw.WorkerReportsProgress = true; //bw.WorkerSupportsCancellation = true; //bw.DoWork += new DoWorkEventHandler(bw_DoWork); //bw.ProgressChanged += new ProgressChangedEventHandler(bw_ProgressChanged); //bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted); Referti = new Referti(); SelectedReferto = null; //Semplice //RetrieveData(); //Thread //ThreadStart start = () => Dispatchet.BeginInvoke(DispatcherPriority.Normal, // new Action(RetrieveData)); //new Thread(start).Start(); //altro sistema d = new updateData(RetrieveData); tx = new System.Threading.Thread(RetrieveDataThread); tx.Start(); //bw.RunWorkerAsync(); //Action a = // () => RetrieveData(); //Dispatchet.BeginInvoke(a,new object[]{}); //RetrieveData(); } //private void bw_DoWork(object sender, DoWorkEventArgs e) //{ // BackgroundWorker worker = sender as BackgroundWorker; // System.Windows.Threading.Dispatcher dispatcher = System.Windows.Threading.Dispatcher.CurrentDispatcher; // Action a = // () => RetrieveData(); // Dispatchet.BeginInvoke(a, new object[] { }); //} //private void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) //{ // if ((e.Cancelled == true)) // { // ; // } // else if (!(e.Error == null)) // { // ; // } // else // { // ; // } //} //private void bw_ProgressChanged(object sender, ProgressChangedEventArgs e) //{ //} private static bool _received = false; public static bool Received { get { return _received; } } private void RetrieveDataThread() { Dispatchet.BeginInvoke(d, null); } private void RetrieveData() { if (_received) { _received = !_received; return; } _received = !_received; try { //System.Threading.Thread.Sleep(5000); Referti = Referti.GetReferti(Configuration.DataFolder, Referti); base.NotifyPropertyChanged("Referti"); } catch (Exception ex) { ; } } }
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5