OpenFileDialogThis allows users to browse folders and select files. It can be used with C# code. It displays the standard Windows dialog box.
The results of the selection made in OpenFileDialog can be read in your C# code. We can use common methods like File.ReadAllText once the dialog is closed.
ShowDialogYou can open the OpenFileDialog that is in your Windows Forms program. The dialog will not open automatically and it must be invoked in your custom code.
Button control. Find the Button icon in the Toolbox and drag it to an area in your Windows Forms window.DialogResult variable is tested to see what action the user specified to take.using System;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
// Show the dialog and get result.
DialogResult result = openFileDialog1.ShowDialog();
if (result == DialogResult.OK) // Test result.
{
}
Console.WriteLine(result); // <-- For debugging use.
}
}
}You can access the file specified by the user in the OpenFileDialog—and then read it in using the System.IO namespace methods. We can also handle exceptions.
using System;
using System.IO;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int size = -1;
DialogResult result = openFileDialog1.ShowDialog(); // Show the dialog.
if (result == DialogResult.OK) // Test result.
{
string file = openFileDialog1.FileName;
try
{
string text = File.ReadAllText(file);
size = text.Length;
}
catch (IOException)
{
}
}
Console.WriteLine(size); // <-- Shows file size in debugging mode.
Console.WriteLine(result); // <-- For debugging use.
}
}
}The OpenFileDialog control in Windows Forms has many properties that you can set directly in the designer. You do not need to assign them in your own C# code.
The OpenFileDialog supports filters for matching file names. The asterisk indicates a wildcard. With an extension, you can filter by a file type.
ReadOnlyThe OpenFileDialog has some properties that allow users to specify whether a file should be read in read-only mode. The read-only check box can be displayed.
We looked at the OpenFileDialog—many programs will need to have an open file dialog. This control implements this functionality without any problems.