2011-09-20 22 views
10

सी #, विनफॉर्म: क्या कोई तरीका है कि मैं देख सकता हूं कि कौन सी विधियां एक विशिष्ट विधि को कॉल कर रही हैं? अच्छी तरह से मैं एक ब्रेक पॉइंट डाल सकता हूं और कॉल स्टैक देख सकता हूं, लेकिन यह यूआई से संबंधित है और यह एक डबलक्लिक घटना है, इसलिए मैंने सोचा कि यह उपयोगी होगा अगर डीबग के समान कुछ। राइटलाइन (....) कॉल प्रिंट भी कर सकता है एक विधि पर ढेर ताकि मैं इसे अपनी विधि की शुरुआत में लिख सकूं और इस बार से यह ठीक से देख सकूं, इस विधि से, इस समय से ...आउटपुट विंडो में प्रिंट स्टैक ट्रेस

+0

डीबग संदेशों को प्रिंट करने के बजाय, आप बस अपना कर्सर विधि नाम पर डाल सकते हैं और Shift + F12 (Edit.FindAllReferences) दबा सकते हैं ... – Timwi

+1

हाँ, लेकिन इसका मतलब यह नहीं है कि उन सभी विधियों में मेरी विधि को उस विशिष्ट में कॉल कर रहे हैं निष्पादन पथ Envirnoment.StrackTrace जवाब सही है। – Bohn

उत्तर

3

जो आप खोज रहे हैं System.Diagnostics.StackTrace है। आप बस उस बिंदु पर एक नया उदाहरण बनाते हैं जहां आप ढेर को देखना चाहते हैं।

सावधान रहें, हालांकि, एक स्टैक ट्रेस बनाना बहुत महंगा है।

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