Come utilizzare OpenFileDialog nelle applicazioni GUI C#

Come Utilizzare Openfiledialog Nelle Applicazioni Gui C



Creare applicazioni grafiche con C# e il framework Windows Forms è uno dei modi migliori per espandere le tue competenze in C#. Come tutti gli altri formati di programmazione, alla fine ti ritroverai a creare un'applicazione che funzioni con i file.

In questo tutorial ti mostreremo le nozioni di base per lavorare con l'applicazione grafica Windows imparando come creare un'app in grado di leggere i file con un clic di un pulsante.







Ci concentreremo principalmente su OpenFileDialog che ci consente di sfogliare e selezionare i file da un filesystem. Fa parte dello spazio dei nomi System.Windows.Forms. Pertanto, ti verrà richiesto di installare gli strumenti del WFP.



Creazione di un progetto

Prima di poter utilizzare il componente OpenFileDialog, dobbiamo creare un progetto che supporti Windows Form. È possibile seguire i passaggi descritti di seguito utilizzando Visual Studio 2022 e versioni successive.



Avvia Visual Studio 2022 e seleziona l'opzione 'Crea un nuovo progetto'.






Nel passaggio successivo, scegli un modello di progetto che desideri utilizzare. Nel nostro caso, desideriamo creare un'app Windows Forms. Seleziona questo modello.


Nel passaggio successivo, seleziona la tua versione NET e fornisci un nome per il tuo progetto.



Aggiunta di un pulsante

Una volta creato il progetto, Visual Studio ti porterà a un editor drag and drop in cui potrai trascinare i componenti di cui hai bisogno.

Nel nostro caso, la prima cosa di cui abbiamo bisogno è un pulsante che attivi OpenFileDialog. Dal menu della casella degli strumenti, trascina e rilascia il pulsante sull'area di disegno.


Modificare la proprietà del testo del pulsante in 'Apri file'.

Pulsante Fare clic su Gestore eventi

In questo momento, il pulsante non fa nulla con un clic. Per garantire che il pulsante apra OpenFileDialog, dobbiamo aggiungere un gestore di eventi.

Fare doppio clic sul pulsante o premere F7 per aprire l'editor del codice.


Nel gestore eventi del pulsante, aggiungi il codice seguente per inizializzare e aprire OpenFileDialog:

pulsante di annullamento privato1_Click ( mittente dell'oggetto, EventArgs e )
{
utilizzando ( OpenFileDialog openFileDialog = nuovo OpenFileDialog ( ) )
{
Se ( openFileDialog.ShowDialog ( ) == Risultatodialogo.OK )
{
stringa selezionataFile = openFileDialog.FileName;
MessageBox.Show ( 'File selezionato: ' +File selezionato ) ;
}
}
}


Nell'esempio fornito, iniziamo creando un'istanza della classe OpenFileDialog. Utilizziamo anche la dichiarazione 'using' per garantire che venga smaltito correttamente una volta eseguita l'operazione per evitare sprechi di risorse.

Controlliamo quindi se l'utente ha confermato la selezione del file facendo clic sul pulsante 'OK'.

Infine, recuperiamo il percorso completo del percorso selezionato e lo visualizziamo all'interno di un componente MessageBox.

Prova a eseguire il codice e guarda cosa fa. Nel nostro caso, il codice ci consente di aprire il selettore di file in base al clic di un pulsante e visualizzare il percorso del file selezionato come segue:

Selezione di tipi di file specifici

A seconda dell'utilizzo dell'applicazione, potresti voler leggere solo file specifici. È qui che entra in gioco il filtraggio dei file. Supponiamo di voler selezionare solo i file immagine. Possiamo implementare una funzionalità di filtro file per i file immagine impostando la proprietà 'Filter' di OpenFileDialog.

Dai un'occhiata al seguente codice:

pulsante di annullamento privato1_Click ( mittente dell'oggetto, EventArgs e )
{
utilizzando ( OpenFileDialog openFileDialog = nuovo OpenFileDialog ( ) )
{
openFileDialog.Filter = 'Immagini|*.jpg,*.jpeg,*.png,*.gif,*.bmp,*.tiff,*.webp,*.heif,*.ico,*.raw' ;
Se ( openFileDialog.ShowDialog ( ) == Risultatodialogo.OK )
{
stringa selezionataFile = openFileDialog.FileName;
MessageBox.Show ( 'File selezionato: ' +File selezionato ) ;
}
}
}


Una volta eseguito il codice e fatto clic sul pulsante, dovremmo vedere i tipi di file che possiamo selezionare come mostrato nell'esempio seguente:

Visualizzazione del contenuto del file

Per aggiungere più funzionalità alla nostra app, possiamo visualizzare il contenuto del file utilizzando un MessageBox come segue:

pulsante di annullamento privato1_Click ( mittente dell'oggetto, EventArgs e )
{
utilizzando ( OpenFileDialog openFileDialog = nuovo OpenFileDialog ( ) )
{
openFileDialog.Filter = 'File di testo|*.txt' ;
Se ( openFileDialog.ShowDialog ( ) == Risultatodialogo.OK )
{
stringa selezionataFile = openFileDialog.FileName;
contenuto della stringa = File.ReadAllText ( file selezionato ) ;
MessageBox.Show ( 'Contenuto del file:' + contenuto ) ;
}
}
}


In questo caso, stiamo filtrando i file di testo poiché sono semplici da leggere. Dopo aver selezionato il file, utilizziamo File.ReadAllText() e salviamo il contenuto del file in una variabile.

Visualizziamo quindi il contenuto del file utilizzando MessageBox come mostrato nella funzionalità del file risultante:

Selezione di più file

Puoi anche abilitare OpenFileDialog per leggere più file utilizzando la proprietà 'MultiSelect'. Ciò è utile quando è necessario selezionare più file come copia, spostamento, ecc.

La funzione è la seguente:

pulsante di annullamento privato1_Click ( mittente dell'oggetto, EventArgs e )
{
utilizzando ( OpenFileDialog openFileDialog = nuovo OpenFileDialog ( ) )
{
openFileDialog.Filter = 'File di testo|*.txt' ;
openFileDialog.Multiselect = VERO ;
Se ( openFileDialog.ShowDialog ( ) == Risultatodialogo.OK )
{
per ciascuno ( era file In openFileDialog.FileNames )
{
MessageBox.Show ( 'File selezionati:' + file ) ;
}
}
}
}


In questo esempio, utilizziamo la proprietà 'MultiSelect' che ci consente di selezionare più file di testo.

Quindi iteriamo su ciascun file selezionato e ne visualizziamo il percorso in un MessageBox.


Ecco qua!

Conclusione

In questo fantastico tutorial hai imparato come creare un'applicazione GUI di base in C# in grado di leggere il file e visualizzare il contenuto utilizzando OpenFileDialog. Hai anche appreso le funzionalità come il filtraggio di file specifici, la selezione di più file, ecc.