Kako uporabljati pogovorno okno za odpiranje datoteke v aplikacijah C#

Kako Uporabljati Pogovorno Okno Za Odpiranje Datoteke V Aplikacijah C



Gradnja grafičnih aplikacij s C# in ogrodjem Windows Forms je eden najboljših načinov za razširitev znanja C#. Tako kot vsi drugi programski formati boste tudi vi sčasoma zgradili aplikacijo, ki deluje z datotekami.

V tej vadnici vam bomo pokazali osnove dela z grafično aplikacijo Windows tako, da se bomo naučili sestaviti aplikacijo, ki lahko bere datoteke s klikom gumba.







Osredotočili se bomo predvsem na OpenFileDialog, ki nam omogoča brskanje in izbiranje datotek iz datotečnega sistema. Je del imenskega prostora System.Windows.Forms. Zato boste morali imeti nameščena orodja WFP.



Ustvarjanje projekta

Preden lahko uporabimo komponento OpenFileDialog, moramo ustvariti projekt, ki podpira Windows Forms. Sledite korakom, kot je opisano v nadaljevanju, z uporabo Visual Studio 2022 in novejše različice.



Zaženite Visual Studio 2022 in izberite možnost »Ustvari nov projekt«.






V naslednjem koraku izberite predlogo projekta, ki jo želite uporabiti. V našem primeru želimo ustvariti aplikacijo Windows Forms. Izberite to predlogo.


V naslednjem koraku izberite različico NET in vnesite ime za svoj projekt.



Dodajanje gumba

Ko ustvarite projekt, vas Visual Studio popelje v urejevalnik povleci in spusti, kjer lahko povlečete komponente, ki jih potrebujete.

V našem primeru je prva stvar, ki jo potrebujemo, gumb, ki sproži OpenFileDialog. Iz menija orodjarne povlecite in spustite gumb na platno.


Spremenite lastnost besedila gumba v »Odpri datoteko«.

Gumb Kliknite Obravnavalec dogodkov

V tem trenutku gumb ob kliku ne naredi ničesar. Da zagotovimo, da gumb odpre OpenFileDialog, moramo dodati obravnavo dogodkov.

Dvakrat kliknite na gumb ali pritisnite F7, da odprete urejevalnik kode.


V obdelovalniku dogodkov gumba dodajte naslednjo kodo za inicializacijo in odpiranje OpenFileDialog:

zasebni void button1_Click ( pošiljatelj objekta, EventArgs e )
{
uporabo ( OpenFileDialog openFileDialog = nov OpenFileDialog ( ) )
{
če ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
string selectedFile = openFileDialog.FileName;
MessageBox.Show ( 'Izbrana datoteka: ' + izbrana datoteka ) ;
}
}
}


V danem primeru začnemo z ustvarjanjem primerka razreda OpenFileDialog. Uporabljamo tudi izjavo »uporaba«, da zagotovimo, da je pravilno odstranjen, ko je operacija opravljena, da preprečimo zapravljanje virov.

Nato preverimo, ali je uporabnik potrdil izbiro datoteke s klikom na gumb »V redu«.

Na koncu pridobimo celotno pot izbrane poti in jo prikažemo znotraj komponente MessageBox.

Poskusite zagnati kodo in poglejte, kaj počne. V našem primeru nam koda omogoča, da odpremo izbirnik datotek na podlagi klika na gumb in prikažemo pot do izbrane datoteke, kot sledi:

Izbiranje posebnih vrst datotek

Odvisno od uporabe vaše aplikacije boste morda želeli brati samo določene datoteke. Tukaj pride v poštev filtriranje datotek. Recimo, da želimo samo izbrati slikovne datoteke, lahko implementiramo funkcijo filtra datotek za slikovne datoteke tako, da nastavimo lastnost »Filter« v OpenFileDialog.

Oglejte si naslednjo kodo:

zasebni void button1_Click ( pošiljatelj objekta, EventArgs e )
{
uporabo ( OpenFileDialog openFileDialog = nov OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Slike|*.jpg,*.jpeg,*.png,*.gif,*.bmp,*.tiff,*.webp,*.heif,*.ico,*.raw' ;
če ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
string selectedFile = openFileDialog.FileName;
MessageBox.Show ( 'Izbrana datoteka: ' + izbrana datoteka ) ;
}
}
}


Ko zaženemo kodo in kliknemo gumb, bi morali videti vrste datotek, ki jih smemo izbrati, kot je prikazano v naslednjem primeru:

Prikaz vsebine datoteke

Da bi naši aplikaciji dodali več funkcij, lahko prikažemo vsebino datoteke s sporočilom na naslednji način:

zasebni void button1_Click ( pošiljatelj objekta, EventArgs e )
{
uporabo ( OpenFileDialog openFileDialog = nov OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Besedilne datoteke|*.txt' ;
če ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
string selectedFile = openFileDialog.FileName;
vsebina niza = File.ReadAllText ( izbrana datoteka ) ;
MessageBox.Show ( 'Vsebina datoteke:' + vsebina ) ;
}
}
}


V tem primeru filtriramo besedilne datoteke, saj jih je preprosto brati. Ko izberemo datoteko, uporabimo File.ReadAllText() in shranimo vsebino datoteke v spremenljivko.

Nato prikažemo vsebino datoteke z uporabo MessageBoxa, kot je prikazano v nastali funkciji datoteke:


Tukaj imaš!

Zaključek

V tej izjemni vadnici ste se naučili, kako zgraditi osnovno aplikacijo GUI v C#, ki lahko prebere datoteko in prikaže vsebino s pomočjo OpenFileDialog. Naučili ste se tudi funkcij, kot je filtriranje določenih datotek itd.