OpenFileDialogi kasutamine C# GUI rakendustes

Openfiledialogi Kasutamine C Gui Rakendustes



Graafiliste rakenduste loomine C# ja Windows Forms raamistikuga on üks parimaid viise oma C# oskuste laiendamiseks. Nagu kõik teised programmeerimisvormingud, avastate end lõpuks failidega töötava rakenduse loomisel.

Selles õpetuses näitame teile Windowsi graafilise rakendusega töötamise põhitõdesid, õppides koostama rakendust, mis suudab faile ühe nupuvajutusega lugeda.







Keskendume peamiselt OpenFileDialogile, mis võimaldab meil failisüsteemis faile sirvida ja valida. See on osa nimeruumist System.Windows.Forms. Seetõttu peate installima WFP tööriistad.



Projekti loomine

Enne OpenFileDialogi komponendi kasutamist peame looma projekti, mis toetab Windowsi vorme. Visual Studio 2022 ja uuemate versioonide abil saate järgida alljärgnevaid samme.



Käivitage Visual Studio 2022 ja valige suvand 'Loo uus projekt'.






Järgmises etapis valige projekti mall, mida soovite kasutada. Meie puhul soovime luua rakenduse Windows Forms. Valige see mall.


Järgmises etapis valige oma NET-versioon ja andke oma projektile nimi.



Nupu lisamine

Kui olete projekti loonud, viib Visual Studio teid pukseerimisredaktorisse, kus saate lohistada vajalikke komponente.

Meie puhul on esimene asi, mida vajame, nuppu, mis käivitab OpenFileDialogi. Lohistage tööriistakasti menüüs nupp lõuendile.


Muutke nupu teksti omaduseks 'Ava fail'.

Nupp Klõpsake sündmuste käitleja

Praegusel hetkel ei tee nupp klõpsamisel midagi. Tagamaks, et nupp avab OpenFileDialogi, peame lisama sündmuste töötleja.

Koodiredaktori avamiseks topeltklõpsake nuppu või vajutage F7.


Lisage nupusündmuste käitlejasse OpenFileDialogi lähtestamiseks ja avamiseks järgmine kood:

privaatne tühine nupp1_Klõpsake ( objekti saatja, EventArgs e )
{
kasutades ( OpenFileDialog openFileDialog = uus OpenFileDialog ( ) )
{
kui ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
string selectedFile = openFileDialog.FileName;
MessageBox.Show ( 'Valitud fail:' + valitud fail ) ;
}
}
}


Antud näites alustame OpenFileDialog klassi eksemplari loomisega. Samuti kasutame käsku 'kasutamine', et tagada selle õige kõrvaldamine pärast toimingu tegemist, et vältida ressursside raiskamist.

Seejärel kontrollime, kas kasutaja on failivaliku kinnitanud, klõpsates nuppu “OK”.

Lõpuks hangime valitud tee täieliku tee ja kuvame selle MessageBoxi komponendis.

Proovige koodi käivitada ja vaadake, mida see teeb. Meie puhul võimaldab kood avada nupuvajutusega failivalija ja kuvada valitud faili tee järgmiselt:

Konkreetsete failitüüpide valimine

Olenevalt teie rakenduse kasutusest soovite võib-olla lugeda ainult teatud faile. Siin tuleb mängu failide filtreerimine. Oletame, et tahame valida ainult pildifaile. Saame pildifailide jaoks rakendada failifiltri funktsiooni, määrates OpenFileDialogi atribuudi „Filter”.

Vaadake järgmist koodi:

privaatne tühine nupp1_Klõpsake ( objekti saatja, EventArgs e )
{
kasutades ( OpenFileDialog openFileDialog = uus OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Pildid|*.jpg,*.jpeg,*.png,*.gif,*.bmp,*.tiff,*.webp,*.heif,*.ico,*.raw' ;
kui ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
string selectedFile = openFileDialog.FileName;
MessageBox.Show ( 'Valitud fail:' + valitud fail ) ;
}
}
}


Kui oleme koodi käivitanud ja nuppu klõpsanud, peaksime nägema failitüüpe, mida meil on lubatud valida, nagu on näidatud järgmises näites:

Faili sisu kuvamine

Oma rakendusele lisafunktsioonide lisamiseks saame faili sisu kuvada MessageBoxi abil järgmiselt:

privaatne tühine nupp1_Klõpsake ( objekti saatja, EventArgs e )
{
kasutades ( OpenFileDialog openFileDialog = uus OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Tekstifailid|*.txt' ;
kui ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
string selectedFile = openFileDialog.FileName;
string sisu = File.ReadAllText ( valitud fail ) ;
MessageBox.Show ( 'Faili sisu:' + sisu ) ;
}
}
}


Sel juhul filtreerime tekstifaile, kuna neid on lihtne lugeda. Faili valimisel kasutame File.ReadAllText() ja salvestame faili sisu muutujasse.

Seejärel kuvame faili sisu MessageBoxi abil, nagu on näidatud tulemuseks olevas failifunktsioonis:

Mitme faili valimine

Saate lubada ka OpenFileDialogil mitme faili lugemiseks atribuudi „MultiSelect” abil. See on kasulik, kui peate valima mitu faili (nt kopeerimine, teisaldamine jne).

Funktsioon on järgmine:

privaatne tühine nupp1_Klõpsake ( objekti saatja, EventArgs e )
{
kasutades ( OpenFileDialog openFileDialog = uus OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Tekstifailid|*.txt' ;
openFileDialog.Multiselect = tõsi ;
kui ( openFileDialog.ShowDialog ( ) == DialogResult.OK )
{
igaühele ( oli faili sisse openFileDialog.FileNames )
{
MessageBox.Show ( 'Valitud failid: ' + faili ) ;
}
}
}
}


Selles näites kasutame atribuuti 'MultiSelect', mis võimaldab meil valida mitu tekstifaili.

Seejärel kordame iga valitud faili üle ja kuvame selle tee sõnumikastis.


Siin on see!

Järeldus

Selles vinges õpetuses õppisite, kuidas luua C#-s GUI põhirakendust, mis suudab faili OpenFileDialogi abil lugeda ja sisu kuvada. Samuti õppisite tundma selliseid funktsioone nagu konkreetsete failide filtreerimine, mitme faili valimine jne.