Bugs zijn onvermijdelijk; het is hoe je ermee omgaat dat telt.
Lezers zoals jij steunen MUO. Wanneer u een aankoop doet via links op onze site, kunnen we een aangesloten commissie verdienen.
Wanneer u een nieuwe Windows Form-toepassing maakt, zult u problemen of bugs in uw code tegenkomen. Dit maakt deel uit van het normale ontwikkelingsproces en u moet uw code debuggen om de oorzaak van eventuele problemen te vinden.
Visual Studio heeft veel tools die u kunt gebruiken om u te helpen bij het debuggen van delen van uw code. Dit omvat het toevoegen van breekpunten aan bepaalde coderegels en het regel voor regel doorlopen ervan. Dit zal u helpen om de waarden van variabelen op bepaalde punten te identificeren.
U kunt ook het directe venster gebruiken om bepaalde variabelen op de opdrachtregel af te drukken.
Hoe breekpunten aan het C#-bestand toe te voegen
Voordat u uw toepassing uitvoert, kunt u meerdere breekpunten toevoegen aan bepaalde coderegels binnen de C#-code-behind-bestanden. Nadat u de toepassing hebt uitgevoerd, pauzeert het programma wanneer het een breekpunt bereikt. U kunt dan een lijst met variabelen en al hun waarden op dat punt bekijken.
- Maak een nieuwe Windows Form-toepassing.
- Zoek naar een knop met behulp van de Toolbox. Sleep een nieuwe knop uit de Toolbox naar het canvas.
- Markeer de knop en navigeer naar het eigenschappenvenster. Wijzig de eigenschappen in de volgende nieuwe waarden:
Eigendom Nieuwe waarde Naam btnConverteren Maat 200, 80 Tekst Overzetten - Klik en sleep een tekstvak naar het canvas vanuit de Toolbox. Plaats deze links van de Overzetten knop.
- Markeer het nieuwe tekstvak en navigeer naar het eigenschappenvenster. Wijzig de eigenschappen in de volgende nieuwe waarden:
Eigendom Nieuwe waarde Eigendom Nieuwe waarde Naam txtCelcius - Klik en sleep een ander tekstvak vanuit de Toolbox naar het canvas. Plaats deze rechts van de Overzetten knop.
- Markeer het nieuwe tekstvak en navigeer naar het eigenschappenvenster. Wijzig de eigenschappen in het volgende:
Eigendom Nieuwe waarde Naam txtFahrenheit Ingeschakeld Vals - Dubbelklik op het canvas op de Overzetten knop. Dit genereert een nieuwe functie in het code-behind-bestand, genaamd btnConvert_Click(). Gebeurtenissen in een Windows Form-toepassing kan bepaalde functies triggeren om uit te voeren. Deze functie wordt bijvoorbeeld geactiveerd wanneer de gebruiker op het Overzetten knop tijdens runtime.
privaatleegtebtnConvert_Click(object afzender, EventArgs e)
{
} - Voeg de volgende code toe aan de functie. Hierdoor wordt de waarde ingevoerd in het eerste tekstvak en wordt de functie CelciusToFahrenheit() gebruikt om deze naar Fahrenheit te converteren. Vervolgens wordt het eindresultaat weergegeven aan de gebruiker.
privaatleegtebtnConvert_Click(object afzender, EventArgs e)
{
// Haalt de waarde op die in het eerste tekstvak is ingevoerd
dubbele celsiusWaarde = Dubbel. Ontleed (txtCelcius. Tekst);// Berekening
dubbele resultaat = CelciusToFahrenheit (celsiusWaarde);// Geef het resultaat weer
txtFahrenheit. Tekst = resultaat. ToString();
} - Maak de CelciusToFahrenheit()-functie. Deze functie converteert een getal van Celsius naar Fahrenheit en retourneert het resultaat.
privaatdubbeleCelciusToFahrenheit(dubbele waarde)
{
// Formule om Celcius naar Fahrenheit om te zetten
dubbele resultaat = (waarde * 9 / 5) + 32;opbrengst resultaat;
} - Voeg een breekpunt toe voor de eerste regel van de functie btnConvert_Click(). Voeg het breekpunt toe door op de ruimte aan de linkerkant van het codevenster te klikken.
Hoe u door de functies stapt en waarden van lokale variabelen bekijkt
Wanneer u uw toepassing uitvoert, stopt deze bij het eerste breekpunt. U kunt de Stap erin, Overstappen, of Uitstappen knoppen om elke regel van de applicatie te debuggen.
- Klik op de groene afspeelknop bovenaan het Visual Studio-venster.
- Voer een nummer in het tekstvak in en klik op de Overzetten knop.
- Het programma pauzeert en opent het C#-bestand waar uw breekpunt zich bevindt. In dit geval zal het pauzeren in de btnConvert_Click() functie, aangezien u deze functie activeerde door te klikken op Overzetten.
- Bovenaan het Visual Studio-venster kunt u de knoppen Stap in (F11), Stap over (F10) en Stap uit (Shift + F11) gebruiken om regel voor regel door het programma te klikken. Hiermee kunt u alle variabelen en waarden voor een gemarkeerde regel debuggen.
- Klik op de Overstappen knop om de volgende regel in de code te markeren.
- Klik onderaan de Visual Studio-toepassing op de Lokale bevolking tabblad. Hierdoor kunt u de waarden van alle variabelen op dat punt in het programma bekijken.
- De gemarkeerde regel bevat nu een aanroep naar de functie CelciusToFahrenheit(). Klik op de Stap erin knop om deze functie te openen.
- Klik op de Uitstappen om de CelciusToFahrenheit()-functie te verlaten en terug te gaan naar de btnConvert_Click()-functie.
Met het directe venstertabblad kunt u de waarden van bestaande variabelen afdrukken en dit kan een zeer nuttig hulpmiddel zijn tijdens het debuggen. U kunt ook freestyle-code van één regel schrijven om te experimenteren met het verkrijgen van verschillende resultaten en waarden.
- Wijzig de berekening binnen de CelciusToFahrenheit()-functie. Dit resulteert in het verkeerde antwoord.
dubbele resultaat = waarde * 9 / 5;
- Verwijder alle bestaande breekpunten door erop te klikken.
- Voeg een nieuw breekpunt toe aan de functie CelciusToFahrenheit(), op het punt waar u het resultaat retourneert.
- Terwijl de toepassing actief is, voert u opnieuw een nummer in het tekstvak in en klikt u op Overzetten knop.
- Zodra het programma stopt bij uw nieuwe breekpunt, klikt u op de Onmiddellijk venster tabblad. U vindt deze rechtsonder in de Visual Studio-toepassing.
- Typ de naam van een bestaande variabele, zoals "resultaat". druk op Binnenkomen op uw toetsenbord om de huidige waarde op dat moment af te drukken.
- U kunt ook uw eigen coderegels typen door op te drukken Binnenkomen op uw toetsenbord na elke regel om het resultaat te bekijken. Typ de volgende coderegel in het directe venstertabblad en druk op Enter:
waarde * 9 / 5
- Typ in het directe venster de juiste berekening in om het juiste resultaat te zien. Door op deze manier regels code te typen, kunt u snel en gemakkelijk nieuwe waarden bekijken en ontdekken wat de oorzaak van het probleem zou kunnen zijn. Hier kunt u zien dat het onjuiste resultaat te wijten is aan de onjuiste berekening.
(waarde * 9 / 5) + 32
Winforms-toepassingen debuggen om fouten te onderzoeken
Hopelijk begrijp je nu hoe je een Windows Form-toepassing kunt debuggen. Door breekpunten te gebruiken en elke regel te doorlopen, zou u nu in staat moeten zijn om de hoofdoorzaak van eventuele problemen te bepalen.
Nu kunt u doorgaan met het onderhouden en behouden van alle apps die u bouwt, bijna vrij van bugs!