Winforms: conceptes bàsics de depuració amb Visual Studio

Winforms: conceptes bàsics de depuració amb Visual Studio
Lectors com tu ajuden a donar suport a MUO. Quan feu una compra mitjançant enllaços al nostre lloc, podem guanyar una comissió d'afiliats.

Quan creeu una nova aplicació de Windows Form, experimentareu problemes o errors al vostre codi. Això forma part del procés de desenvolupament normal i haureu de depurar el vostre codi per trobar la causa de qualsevol problema.





Visual Studio té moltes eines que podeu utilitzar per ajudar-vos a depurar parts del vostre codi. Això inclou afegir punts d'interrupció a determinades línies de codi i passar-hi línia per línia. Això us ajudarà a identificar els valors de les variables en determinats punts.





quin és el punt a mig camí entre dues ciutats
MAKEUSEO VÍDEO DEL DIA

També podeu utilitzar la finestra immediata per imprimir determinades variables a la línia d'ordres.





Com afegir punts d'interrupció al fitxer C#

Abans d'executar la vostra aplicació, podeu afegir diversos punts d'interrupció a determinades línies de codi, dins dels fitxers de codi de C#. Un cop executeu l'aplicació, el programa s'aturarà quan arribi a un punt d'interrupció. A continuació, podeu veure una llista de variables i tots els seus valors en aquest punt.

  1. Creeu una nova aplicació de Windows Form .
  2. Cerqueu un botó amb la Caixa d'eines. Arrossegueu un botó nou de la Caixa d'eines al llenç.   Botó seleccionat al llenç amb la finestra de propietats oberta
  3. Ressalteu el botó i aneu a la finestra de propietats. Canvieu les seves propietats als valors nous següents:
    Nom btnConvert
    Mida 200, 80
    Text Converteix
      Valors d'impressió de pestanyes de finestra immediata
  4. Feu clic i arrossegueu un quadre de text al llenç des de la Caixa d'eines. Col·loqueu-lo a l'esquerra del Converteix botó.
  5. Ressalteu el quadre de text nou i aneu a la finestra de propietats. Canvieu les seves propietats als valors nous següents:
    Propietat Nou valor
    Nom txtCelcius
  6. Feu clic i arrossegueu un altre quadre de text al llenç des de la Caixa d'eines. Col·loqueu-lo a la dreta del Converteix botó.
  7. Ressalteu el quadre de text nou i aneu a la finestra de propietats. Canvieu les seves propietats a les següents:
    Nom txtFahrenheit
    Habilitat Fals
  8. Al llenç, feu doble clic a Converteix botó. Això generarà una nova funció al fitxer code-behind, anomenada btnConvert_Click(). Esdeveniments en una aplicació de Windows Form pot activar determinades funcions per executar-se. Per exemple, aquesta funció s'activarà quan l'usuari faci clic a Converteix botó en temps d'execució.
    private void btnConvert_Click(object sender, EventArgs e) 
    {
    }
  9. Afegiu el codi següent a la funció. Això obtindrà el valor introduït al primer quadre de text i utilitzarà la funció CelciusToFahrenheit() per convertir-lo a Fahrenheit. A continuació, tornarà a mostrar el resultat final a l'usuari.
    private void btnConvert_Click(object sender, EventArgs e) 
    {
    // Gets the value entered into the first text box
    double celsiusValue = Double.Parse(txtCelcius.Text);

    // Calculation
    double result = CelciusToFahrenheit(celsiusValue);

    // Display the result
    txtFahrenheit.Text = result.ToString();
    }
  10. Creeu la funció CelciusToFahrenheit(). Aquesta funció convertirà un nombre de Celsius a Fahrenheit i retornarà el resultat.
    private double CelciusToFahrenheit(double value) 
    {
    // Formula to convert Celcius to Fahrenheit
    double result = (value * 9 / 5) + 32;

    return result;
    }
  11. Afegiu un punt d'interrupció per a la primera línia de la funció btnConvert_Click(). Afegiu el punt d'interrupció fent clic a l'espai situat a l'extrem esquerre de la finestra del codi.

Com passar per les funcions i veure els valors de les variables locals

Quan executeu la vostra aplicació, s'aturarà al primer punt d'interrupció. Podeu utilitzar el Entrar a , Passar per sobre , o Sortir botons per depurar cada línia de l'aplicació.



  1. Feu clic al botó verd de reproducció a la part superior de la finestra de Visual Studio.
  2. Introduïu un número al quadre de text i feu clic a Converteix botó.
  3. El programa s'aturarà i obrirà el fitxer C# on es troba el punt d'interrupció. En aquest cas, s'aturarà a la funció btnConvert_Click(), ja que heu activat aquesta funció fent clic a Converteix .
  4. A la part superior de la finestra de Visual Studio, podeu utilitzar els botons Step Into (F11), Step Over (F10) i Step Out (Maj + F11) per fer clic al programa, línia per línia. Això us permet depurar totes les variables i valors d'una línia destacada.
  5. Feu clic a Passar per sobre botó per ressaltar la línia següent del codi.
  6. A la part inferior de l'aplicació Visual Studio, feu clic a Locals pestanya. Això us permet veure els valors de totes les variables en aquest punt del programa.
  7. La línia ressaltada ara conté una crida a la funció CelciusToFahrenheit(). Feu clic a Entrar a botó per entrar a aquesta funció.
  8. Feu clic a Sortir botó per sortir de la funció CelciusToFahrenheit() i tornar a la funció btnConvert_Click().

Com visualitzar els valors mitjançant la finestra Immediata

La pestanya de la finestra immediata us permet imprimir els valors de qualsevol variable existent i pot ser una eina molt útil durant la depuració. També podeu escriure codi d'estil lliure d'una línia per experimentar amb l'obtenció de resultats i valors diferents.

  1. Dins de la funció CelciusToFahrenheit(), modifiqueu el càlcul. Això donarà lloc a la resposta incorrecta.
    double result = value * 9 / 5;
  2. Elimineu tots els punts d'interrupció existents fent-hi clic.
  3. Afegiu un punt d'interrupció nou a la funció CelciusToFahrenheit() en el punt on esteu retornant el resultat.
  4. Amb l'aplicació en execució, torneu a introduir un número al quadre de text i feu clic a Converteix botó.
  5. Un cop el programa s'aturi al vostre nou punt d'interrupció, feu clic a Finestra Immediata pestanya. Podeu trobar-ho a la part inferior dreta de l'aplicació Visual Studio.
  6. Escriviu el nom d'una variable existent, com ara 'resultat'. Premeu Entra al teclat per imprimir el seu valor actual en aquest punt.
  7. També podeu escriure les vostres pròpies línies de codi, prement Entra al teclat després de cada línia per veure el resultat. Escriviu la següent línia de codi a la pestanya de la finestra immediata i premeu Intro:
    value * 9 / 5
  8. A la finestra immediata, escriviu el càlcul correcte per veure el resultat correcte. Escriure línies de codi d'aquesta manera us permet veure de manera ràpida i còmoda els nous valors i trobar el que podria estar causant el problema. Aquí podeu veure que el resultat incorrecte es deu al càlcul incorrecte.
    (value * 9 / 5) + 32

Depuració d'aplicacions Winforms per investigar errors

Amb sort, ara entengueu com depurar una aplicació de Windows Form. Mitjançant l'ús de punts d'interrupció i avançant per cada línia, ara hauríeu de poder determinar la causa arrel de qualsevol problema que es pugui produir.





Ara podeu continuar mantenint i mantenint qualsevol aplicació que creeu gairebé sense errors!