OpenFileDialogin käyttäminen C# GUI -sovelluksissa

Openfiledialogin Kayttaminen C Gui Sovelluksissa



Graafisten sovellusten rakentaminen C#:lla ja Windows Forms -kehyksellä on yksi parhaista tavoista laajentaa C#-taitojasi. Kuten kaikki muutkin ohjelmointimuodot, tulet lopulta rakentamaan sovelluksen, joka toimii tiedostojen kanssa.

Tässä opetusohjelmassa näytämme sinulle Windows Graphical -sovelluksen kanssa työskentelyn perusteet oppimalla rakentamaan sovelluksen, joka pystyy lukemaan tiedostoja napin painalluksella.







Keskitymme pääasiassa OpenFileDialogiin, jonka avulla voimme selata ja valita tiedostoja tiedostojärjestelmästä. Se on osa System.Windows.Forms-nimiavaruutta. Siksi sinun on oltava asennettuna WFP-työkalut.



Projektin luominen

Ennen kuin voimme käyttää OpenFileDialog-komponenttia, meidän on luotava projekti, joka tukee Windows-lomakkeita. Voit seurata seuraavassa kuvattuja vaiheita Visual Studio 2022:lla tai uudemmalla.



Käynnistä Visual Studio 2022 ja valitse 'Luo uusi projekti' -vaihtoehto.






Valitse seuraavassa vaiheessa projektimalli, jota haluat käyttää. Meidän tapauksessamme haluamme luoda Windows Forms -sovelluksen. Valitse tämä malli.


Valitse seuraavassa vaiheessa NET-versiosi ja anna projektillesi nimi.



Painikkeen lisääminen

Kun olet luonut projektin, Visual Studio vie sinut vedä ja pudota -editoriin, jossa voit vetää tarvitsemasi komponentit.

Meidän tapauksessamme ensimmäinen asia, jonka tarvitsemme, on painike, joka käynnistää OpenFileDialogin. Vedä ja pudota painike työkalupalkin valikosta kankaalle.


Muuta painikkeen tekstiominaisuudeksi 'Avaa tiedosto'.

Painike Napsauta Tapahtumakäsittelijä

Tällä hetkellä painike ei tee mitään napsautuksella. Varmistaaksemme, että painike avaa OpenFileDialogin, meidän on lisättävä tapahtumakäsittelijä.

Kaksoisnapsauta painiketta tai paina F7 avataksesi koodieditorin.


Aloita ja avaa OpenFileDialog lisäämällä painiketapahtumakäsittelijään seuraava koodi:

yksityinen void -painike1_Napsauta ( objektin lähettäjä, EventArgs e )
{
käyttämällä ( OpenFileDialog openFileDialog = uusi OpenFileDialog ( ) )
{
jos ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
merkkijono selectedFile = openFileDialog.FileName;
MessageBox.Show ( 'Valittu tiedosto:' + valittu tiedosto ) ;
}
}
}


Annetussa esimerkissä aloitamme luomalla esiintymän OpenFileDialog-luokasta. Käytämme myös 'using' -lausetta varmistaaksemme, että se hävitetään asianmukaisesti toimenpiteen jälkeen resurssien tuhlaamisen välttämiseksi.

Tarkistamme sitten, onko käyttäjä vahvistanut tiedoston valinnan napsauttamalla 'OK'-painiketta.

Lopuksi haemme valitun polun koko polun ja näytämme sen MessageBox-komponentin sisällä.

Kokeile suorittaa koodi ja katso mitä se tekee. Meidän tapauksessamme koodi antaa meille mahdollisuuden avata tiedoston valitsin painikkeen napsautuksen perusteella ja näyttää polun valittuun tiedostoon seuraavasti:

Tiettyjen tiedostotyyppien valitseminen

Sovelluksen käytöstä riippuen saatat haluta lukea vain tiettyjä tiedostoja. Tässä tulee esiin tiedostojen suodatus. Oletetaan, että haluamme valita vain kuvatiedostot. Voimme toteuttaa tiedostosuodatustoiminnon kuvatiedostoille asettamalla OpenFileDialogin 'Filter'-ominaisuuden.

Katso seuraava koodi:

yksityinen void -painike1_Napsauta ( objektin lähettäjä, EventArgs e )
{
käyttämällä ( OpenFileDialog openFileDialog = uusi OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Kuvat|*.jpg,*.jpeg,*.png,*.gif,*.bmp,*.tiff,*.webp,*.heif,*.ico,*.raw' ;
jos ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
merkkijono selectedFile = openFileDialog.FileName;
MessageBox.Show ( 'Valittu tiedosto:' + valittu tiedosto ) ;
}
}
}


Kun suoritamme koodin ja napsautamme painiketta, meidän pitäisi nähdä tiedostotyypit, jotka voimme valita seuraavan esimerkin mukaisesti:

Tiedoston sisällön näyttäminen

Jos haluat lisätä sovellukseemme toimintoja, voimme näyttää tiedoston sisällön MessageBoxin avulla seuraavasti:

yksityinen void -painike1_Napsauta ( objektin lähettäjä, EventArgs e )
{
käyttämällä ( OpenFileDialog openFileDialog = uusi OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Tekstitiedostot|*.txt' ;
jos ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
merkkijono selectedFile = openFileDialog.FileName;
string content = File.ReadAllText ( valittu tiedosto ) ;
MessageBox.Show ( 'Tiedoston sisältö:' + sisältö ) ;
}
}
}


Tässä tapauksessa suodatamme tekstitiedostot, koska niitä on helppo lukea. Kun valitsemme tiedoston, käytämme File.ReadAllText()-funktiota ja tallennamme tiedoston sisällön muuttujaan.

Näytämme sitten tiedoston sisällön käyttämällä MessageBoxia tuloksena olevan tiedostotoiminnon mukaisesti:

Useiden tiedostojen valitseminen

Voit myös ottaa OpenFileDialogin käyttöön useiden tiedostojen lukemisen käyttämällä MultiSelect-ominaisuutta. Tämä on hyödyllistä, kun sinun on valittava useita tiedostoja, kuten kopiointi, siirtäminen jne.

Toiminto on seuraava:

yksityinen void -painike1_Napsauta ( objektin lähettäjä, EventArgs e )
{
käyttämällä ( OpenFileDialog openFileDialog = uusi OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Tekstitiedostot|*.txt' ;
openFileDialog.Multiselect = totta ;
jos ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
jokaiselle ( oli tiedosto sisään openFileDialog.FileNames )
{
MessageBox.Show ( 'Valitut tiedostot: ' + tiedosto ) ;
}
}
}
}


Tässä esimerkissä käytämme 'MultiSelect' -ominaisuutta, jonka avulla voimme valita useita tekstitiedostoja.

Toistamme sitten jokaisen valitun tiedoston ja näytämme sen polun MessageBoxissa.


Siinä se on!

Johtopäätös

Tässä mahtavassa opetusohjelmassa opit rakentamaan perusgraafisen käyttöliittymäsovelluksen C#-kielellä, joka pystyy lukemaan tiedoston ja näyttämään sen sisällön OpenFileDialogin avulla. Opit myös ominaisuuksista, kuten tiettyjen tiedostojen suodatuksesta, useiden tiedostojen valitsemisesta jne.