Hvordan bruke dialogboksen Åpne fil i C#-applikasjoner

Hvordan Bruke Dialogboksen Apne Fil I C Applikasjoner



Å bygge grafiske applikasjoner med C# og Windows Forms-rammeverket er en av de beste måtene å utvide C#-ferdighetene dine på. Som alle andre programmeringsformater, vil du til slutt finne deg selv å bygge et program som fungerer med filer.

I denne opplæringen vil vi vise deg det grunnleggende om å jobbe med Windows grafisk applikasjon ved å lære hvordan du bygger en app som kan lese filene ved å klikke på en knapp.







Vi vil hovedsakelig fokusere på OpenFileDialog som lar oss bla gjennom og velge filene fra et filsystem. Det er en del av System.Windows.Forms-navneområdet. Derfor må du ha WFP-verktøyene installert.



Opprette et prosjekt

Før vi kan bruke OpenFileDialog-komponenten, må vi lage et prosjekt som støtter Windows Forms. Du kan følge trinnene som er beskrevet i det følgende ved å bruke Visual Studio 2022 og nyere.



Start Visual Studio 2022 og velg alternativet 'Opprett et nytt prosjekt'.






I neste trinn velger du en prosjektmal du ønsker å bruke. I vårt tilfelle ønsker vi å lage en Windows Forms-app. Velg denne malen.


I neste trinn velger du NET-versjonen og oppgir et navn for prosjektet.



Legge til en knapp

Når du har opprettet prosjektet, vil Visual Studio ta deg til en dra-og-slipp-editor der du kan dra komponentene du trenger.

For vårt tilfelle er det første vi trenger en knapp som utløser OpenFileDialog. Fra verktøykassemenyen drar og slipper du knappen til lerretet.


Endre tekstegenskapen til knappen til 'Åpne fil'.

Knapp Klikk på hendelsesbehandler

For øyeblikket gjør knappen ingenting ved et klikk. For å sikre at knappen åpner OpenFileDialog, må vi legge til en hendelsesbehandler.

Dobbeltklikk på knappen eller trykk F7 for å åpne kodeeditoren.


I knappen hendelsesbehandler, legg til følgende kode for å initialisere og åpne OpenFileDialog:

privat void-knapp1_Klikk ( objektsender, EventArgs e )
{
ved hjelp av ( OpenFileDialog openFileDialog = ny OpenFileDialog ( ) )
{
hvis ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
string selectedFile = openFileDialog.FileName;
MessageBox.Show ( 'Valgt fil: ' + valgt fil ) ;
}
}
}


I det gitte eksemplet starter vi med å lage en forekomst av OpenFileDialog-klassen. Vi bruker også 'bruker'-erklæringen for å sikre at den blir kastet på riktig måte når operasjonen er utført for å unngå å sløse med ressursene.

Vi sjekker deretter om brukeren har bekreftet filvalget ved å klikke på 'OK'-knappen.

Til slutt henter vi hele banen til den valgte banen og viser den inne i en MessageBox-komponent.

Prøv å kjøre koden og se hva den gjør. I vårt tilfelle lar koden oss åpne filvelgeren basert på et knappeklikk og vise banen til den valgte filen som følger:

Velge spesifikke filtyper

Avhengig av applikasjonsbruken din, vil du kanskje bare lese spesifikke filer. Det er her filfiltreringen kommer inn. Anta at vi bare vil velge bildefilene, kan vi implementere en filfilterfunksjonalitet for bildefiler ved å angi 'Filter'-egenskapen til OpenFileDialog.

Ta en titt på følgende kode:

privat void-knapp1_Klikk ( objektsender, EventArgs e )
{
ved hjelp av ( OpenFileDialog openFileDialog = ny OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Bilder|*.jpg,*.jpeg,*.png,*.gif,*.bmp,*.tiff,*.webp,*.heif,*.ico,*.raw' ;
hvis ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
string selectedFile = openFileDialog.FileName;
MessageBox.Show ( 'Valgt fil: ' + valgt fil ) ;
}
}
}


Når vi kjører koden og klikker på knappen, bør vi se filtypene vi har lov til å velge som vist i følgende eksempel:

Vise filinnholdet

For å legge til mer funksjonalitet til appen vår, kan vi vise innholdet i filen ved å bruke en meldingsboks som følger:

privat void-knapp1_Klikk ( objektsender, EventArgs e )
{
ved hjelp av ( OpenFileDialog openFileDialog = ny OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Tekstfiler|*.txt' ;
hvis ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
string selectedFile = openFileDialog.FileName;
string content = File.ReadAllText ( valgt fil ) ;
MessageBox.Show ( 'Filinnhold: ' + innhold ) ;
}
}
}


I dette tilfellet filtrerer vi etter tekstfiler siden de er enkle å lese. Når vi velger filen, bruker vi File.ReadAllText() og lagrer innholdet i filen til en variabel.

Vi viser deretter filinnholdet ved hjelp av MessageBox som vist i den resulterende filfunksjonaliteten:


Der har du det!

Konklusjon

I denne fantastiske opplæringen lærte du hvordan du bygger en grunnleggende GUI-applikasjon i C# som kan lese filen og vise innholdet ved hjelp av OpenFileDialog. Du lærte også funksjonene som filtrering for spesifikke filer osv.