2015-02-24 11 views
5

मैं सी # डब्ल्यूपीएफ पुस्तक पढ़ रहा हूं और रूटेड इवेंट अध्याय में, ईवेंट में 2 समान गुण Source और OriginalSource हैं।इवेंट स्रोत बनाम मूल स्रोत

Xaml:

<Button Name="Ok" Click="Ok_Click"/> 

कोड के पीछे:

private void Ok_Click(object sender, RoutedEventArgs e) 
{ 
     bool flag = false; 
     var source = e.Source; 
     var originalSource = e.OriginalSource; 
     if (source == originalSource) 
     { 
      flag = true; 
     } 
} 

और flag संपत्ति true यहाँ, कुछ एक व्याख्या कर सकते हैं क्यों 2 एक ही संपत्ति मैं उन दोनों के बीच अंतर नहीं देखा था या इस मामले में इस गुण का कोई प्रभाव नहीं है? या हम इस गुण के लिए उपयोग केस कहां देख सकते हैं?

उत्तर

9

नियंत्रण में बच्चों के रूप में अन्य नियंत्रण हो सकते हैं। जब आप नियंत्रण से किसी ईवेंट की सदस्यता लेते हैं तो आपके द्वारा सब्सक्राइब किए गए माता-पिता को e.Source होने की संभावना है, हालांकि अगर नियंत्रण में बच्चे हैं और बच्चा ऐसा है जो घटना को उठाता है तो OriginalSource वह बच्चा होगा जिसने घटना को उठाया था।

का उपयोग आम तौर एक DataGrid पर KeyDown घटना की सदस्यता है। स्रोत ग्रिड हो सकता है लेकिन मूल स्रोत सेल (या सेल में कुछ घटक) हो सकता है

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