2013-09-23 13 views
7

हम .NET 3.5 का उपयोग कर रहे हैं और प्रतिक्रियाशील एक्सटेंशन का उपयोग करना शुरू कर दिया है। हम सिस्टम का उपयोग कर रहे हैं। प्रतिक्रियाशील (रनटाइम संस्करण: v2.0.50727) जो .NET 3.5 के लिए संगत है।डिस्पैचर शेड्यूलर - आरएक्स

मैं प्रेषक शेड्यूलर पर एक ईवेंट का निरीक्षण करने की कोशिश कर रहा हूं क्योंकि मैं डब्ल्यूपीएफ नियंत्रण का उपयोग कर रहा हूं (यह डब्ल्यूपीएफ होस्ट नियंत्रण के साथ Winforms खोल है), हालांकि मैं शेड्यूलर क्लास (system.reactive पर उस विकल्प को नहीं देख सका। concurrency.scheduler)। ऐसा लगता है कि यह .NET 4.0 के बाद से उपलब्ध है। मेरा सवाल है, मैं इसे .NET 3.5 में कैसे काम कर सकता हूं? ध्यान दें कि मेरे व्यू मॉडेल के अंदर कॉल हो रहा है और देखें नहीं।

कोड:

this.ObservePropertyChanged(x => x.Queue) 
       //I cant find scheduler dispatcher option, 
       //there are other options such as current, imeediete, new etc. 
       .ObserveOn(Scheduler.Dispatcher) 
       .Subscribe(RefreshQueues); 

धन्यवाद,

-माइक

उत्तर

1

मुझे लगता है कि आप DispatcherScheduler.Current

+0

AFAIK के स्थान पर DispatcherScheduler.Current उपयोग करने के लिए, वर्तमान केवल कॉलबैक धागा है, जो एक पृष्ठभूमि धागा है पर कार्रवाई आह्वान करेंगे। मुझे UI थ्रेड पर सदस्यता निष्पादित करने की आवश्यकता है और यूआई बाध्य संग्रह अद्यतन हो रहे हैं। – Mike

+0

DispatcherScheduler.Current वह है जो आप वर्णन कर रहे हैं। यह वर्तमान ui प्रेषक को कॉल मार्शल करता है। – Cookingsource

+0

आह .. अब मुझे यह मिल गया है .. "प्रेषक शेड्यूलर" और "शेड्यूलर" नहीं .. मैंने सिस्टम की कोशिश की। प्रतिक्रियाशील। कॉनकुरेंसी। डिस्पैटरशेडुलर.क्यूरेंट, और लाइन संकलन त्रुटि में परिणाम। क्या आप सुनिश्चित हैं कि यह .NET 3.5 में उपलब्ध है ? – Mike

5

उपयोग करने के लिए आप RX Winforms के साथ क्या करना सक्षम होना चाहिए सक्षम होना चाहिए http://www.nuget.org/packages/Rx-WinForms/

से एक्सटेंशन लाइब्रेरी

या यदि आप पहले से ही सही धागे पर हैं।

this.ObservePropertyChanged(x => x.Queue) 
      .ObserveOn(SynchronizationContext.Current); 
8

अद्यतन: आरएक्स के आधार पर WPF के लिए 2.2.4.0
DispatcherScheduler वर्तमान में System.Reactive.Windows.Threading नाम स्थान में ले जाया जाता।
Nuget पैकेज, आरएक्स-WPF के लिए खोज का उपयोग करना पैकेज डाउनलोड करने और Scheduler.Dispatcher

संबंधित मुद्दे