2012-11-06 11 views
7

मेरे सवाल का मैं कैसे Dispatchertimer.Tick घटना यहाँ में कुछ तर्क भेज सकते हैं कोड है: मैं क्या है dispatcheTimer_TickDispatchertimer.Tick घटना में एक अतिरिक्त तर्क भेज

पर
dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick); 

    private void dispatcherTimer_Tick(object sender, EventArgs e) 
    { 
     //.Text = DateTime.Now.Second.ToString(); 

    } 

एक पूर्णांक मान प्राप्त करना चाहता था मुझे क्या करना चाहता था इस

private void dispatcherTimer_Tick(object sender, EventArgs e,int a) 
    { 
     //.Text = DateTime.Now.Second.ToString(); 

    } 

कैसे एक कॉलिंग बिंदु से एक मूल्य भेजने के लिए की तरह कुछ है ??

उत्तर

0

यदि आप जानते हैं बार जब आप ईवेंट हैंडलर संलग्न कर रहे हैं पर a, तो आप कुछ इस तरह कर सकते हैं:

int a = 0; 
dispatcherTimer.Tick += (sender, e) => 
    { 
     /* a is available here */ 
    }; 
7

जबकि वहाँ कई तरीकों से कर रहे हैं, मैं यह सबसे सुविधाजनक गुमनाम तरीकों का उपयोग करने के लिए लगता है चर के ऊपर बंद करने के लिए जब ऐसा करने से:

int number = 5; 
dispatcherTimer.Tick += (s, args) => 
{ 
    string value = someMethod(); 
    string otherValue = DateTime.Now.Second.ToString() 
    myControl.Text = value + otherValue + number; 
} 
:

dispatcherTimer.Tick += (s, args) => myControl.Text = DateTime.Now.Second.ToString(); 

आप लाइनों के एक मुट्ठी भर है, तो तुम भी कुछ अधिक की तरह कर सकता है

आप लाइनों की सिर्फ एक मुट्ठी भर से ज्यादा है तो आप शायद अभी भी एक और तरीका चाहते हैं, लेकिन आपको लगता है कि विधि कॉल करने के एक लैम्ब्डा उपयोग कर सकते हैं:

int value = 5; 
dispatcherTimer.Tick += (s, args) => myRealMethod(someControl, value); 

public void myRealMethod(Control someControl, int value) 
{ 
    someControl.Text = value; 
} 

इस ईवेंट हैंडलर के दोनों अनदेखी मापदंडों के लिए सुविधाजनक है जब आपको उनकी आवश्यकता नहीं होती है तो प्रतिनिधि (मैं लगभग sender का उपयोग नहीं करता हूं, अगर मुझे इसकी आवश्यकता होती है तो मैं वास्तविक वस्तु को स्वयं पास करता हूं ताकि इसे पहले object पर नहीं डाला जा सके।) साथ ही साथ अतिरिक्त स्थानीय चर भी जोड़ना।

+0

धन्यवाद कि आपने जिस अंतिम विधि को लिखा है, उसने मुझे मदद की – ahmad05

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

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