2015-01-05 13 views
10

in un progetto di Windows Media Form che ha centinaia di moduli, e tutte quelle forme hanno innumerevoli controlli personalizzati con classi di base coinvolte, è molto difficile per me sapere dove un particolare è, voglio dire, qual è il nome del modulo che sto guardando mentre eseguo l'applicazione, e dove esattamente è l'evento click del pulsante, nel codice, del pulsante su cui ho appena fatto clic. Esiste una funzionalità di debug in Visual Studio, che interromperà l'esecuzione solo per la linea in cui è avvenuto il clic. Posso dire a VS di rompere a quale evento Click arriva dopo? (running visual studio 2012/13 in questi giorni).interrompe il debugger al successivo evento click

grazie.

+0

Dipende dalla versione di Visual Studio. Cosa devi cercare per un "breakpoint condizionale". – user743414

risposta

14

Appena prima di fare clic sul pulsante nel programma fare questo:

Vai a Visual Studio e mettere in pausa il programma. Basta premere il pulsante di pausa. Quindi premere F11 (Step Into).

Ora premi il pulsante nel programma e dovresti essere portato nel gestore eventi.

+1

quindi questa è una soluzione molto interessante, l'ho già fatto alcune volte prima. Devi solo stare attento nel caso in cui il tuo modulo abbia il codice dietro gli eventi di spostamento/passaggio del mouse che il codice si interromperà subito dopo aver premuto f10/11 dopo aver premuto il pulsante di pausa e aver spostato accidentalmente il mouse su quella particolare area. Nel mio caso il modulo è stato messo in pausa nell'istruzione Application.Run(), quindi premo F10 e sono di nuovo sul modulo in esecuzione, ora sposto con attenzione il mouse sul pulsante in questione e faccio clic su di esso, quindi non faccio clic. dove volevo essere Questo consiglio/funzionalità non dovrebbe mai essere dimenticato. Grazie. – user734028

+0

Solo per curiosità (non mi interessa molto l'interno dello studio visivo): perché devi entrare * prima * facendo clic sul pulsante? – ilpelle

+1

Funziona solo se è stato selezionato "Abilita solo il mio codice" in Opzioni | Debugging Generale. – Jazimov

0

Posso suggerire una soluzione parziale.

Se i tuoi eventi di clic sono denominati "Button_Click", apri le finestre di Breakpoint mentre esegui il debug e crei Nuovo punto di interruzione.

http://c2n.me/39Uzhkl.png

Fare clic su OK e vedrete l'elenco delle funzioni. Controllali e clicca OK. Su ogni funzione che hai selezionato verrà creato un punto di interruzione.

enter image description here