6

यहाँ मेरी कोड है से DispatcherTimer ..प्रारंभ/बंद एक अलग धागा

public DispatcherTimer tmr = new DispatcherTimer(); 

void somefunction (parameters){ 

if (something) 
    tmr.Start(); 
if (something else) 
    tmr.Stop(); 

    } 

मेरे समस्या यह है कि मैं दूसरी समारोह से tmr वस्तु का प्रारंभ/बंद तरीकों का उपयोग नहीं कर सकता है क्योंकि यह पर चलता है एक अलग धागा !!!

क्या कोई मेरी मदद कर सकता है ?? मैं लगभग 3 दिनों के लिए इस समस्या के साथ मारा गया हूँ! :(

उत्तर

2

आपको इस तरह के इतने

Deployment.Current.Dispatcher.BeginInvoke((Action)(()=>timer.Start()) 
+0

धन्यवाद hasan..but एक के बाद से "tmr" पहले से ही एक DispatcherTimer वस्तु है, यह नहीं है (एक और धागे से कॉल प्रमुखता के लिए) डिस्पैचर के माध्यम से आह्वान करने की जरूरत है इसमें डिस्पैचर विधि! यह काम करेगा अगर टीएमआर सिर्फ एक टाइमर ऑब्जेक्ट है, लेकिन यह नहीं है .. :( – Gowtham

+0

@Gowtham उत्तर –

+0

अद्यतन करने का प्रयास करें, यह अभी भी काम नहीं करता है। मुझे जो त्रुटि मिलती है .. System.Windows.Threading डिस्पैचर 'में' Invoke 'की परिभाषा नहीं है और' System.indows.Threading.Dispatcher 'के पहले तर्क को स्वीकार करने के लिए' Invoke 'कोई एक्सटेंशन विधि नहीं मिल सकती है (क्या आप एक निर्देश या एक असेंबली संदर्भ का उपयोग कर रहे हैं?) – Gowtham

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