हाय मैं एक नेट आवेदन के विकास कर रहा हूँ से फार्म और मैं निम्नलिखित हासिल करना चाहते हैं:एक खिड़कियों कॉलिंग एक और धागा (नेट)
मैं एक WinForms आवेदन, और एक टाइमर है (System.Timers.timer) जो एक शेड्यूल के आधार पर एक थ्रेड excecutes। समस्या यह है कि मैं माध्यमिक थ्रेड (वर्कर थ्रेड) से यूआई (विंडोज़ फॉर्म) तक नहीं पहुंच सकता, त्रुटि यह कहती है कि घटक की तरह कुछ ऐसा नहीं किया जा सकता है जो इसे बनाने वाले थ्रेड से नहीं पहुंचा जा सके।
क्या यह हासिल करने का कोई तरीका है?
धन्यवाद!
OnTimerElapsed(object sender, ElapsedEventArgs e)
{
args = GetArgs();
this.BeginInvoke(() => DoWork(args));
// 'this' refers to form here.
// You can also use BeginInvoke on a user control for updating it.
}
यह चलेंगे:
और ध्यान दें कि यह काम मूल रूप से यूआई थ्रेड के लिए एक कार्य कतार में जोड़ा जाता है जो अंततः इसे समय पर निष्पादित करेगा। –