The Common Dialog controls in Windows Forms enable you to perform dialog-related tasks. Table 3.6 lists the available Common Dialog controls.
|
Control |
Description |
|---|---|
|
ColorDialog |
Displays the color picker dialog box that enables users to set the color of an interface element |
|
FontDialog |
Displays a dialog box that enables users to set a font and its attributes |
|
OpenFileDialog |
Displays a dialog box that enables users to navigate to and select a file |
|
PrintDialog |
Displays a dialog box that enables users to select a printer and set its attributes |
|
PrintPreviewDialog |
Displays a dialog box that shows how a PrintDocument object appears when printed |
|
SaveFileDialog |
Displays a dialog box that allows users to save a file |
The Common Dialog controls are nonvisual controls that are added to a form. After you add a control, you can use its properties and methods to display the dialog. Listing 3.6 uses the Filter property of OpenFileDialog to prompt the user for cursor files.
' Display an OpenFileDialog so the user can select a Cursor. Dim openFileDialog1 As New OpenFileDialog() openFileDialog1.Filter = "Cursor Files|*.cur" openFileDialog1.Title = "Select a Cursor File" ' Show the Dialog. ' If the user clicked OK in the dialog and ' a .CUR file was selected, open it. If openFileDialog1.ShowDialog() = DialogResult.OK Then If openFileDialog1.FileName <> " Then ' Assign the cursor in the Stream to the Form's Cursor property. Me.Cursor = New Cursor(openFileDialog1.OpenFile()) End If End If
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "Cursor Files|*.cur";
openFileDialog.Title = "Select a Cursor File";
if (openFileDialog.ShowDialog() == DialogResult.OK &&
StringType.StrCmp(openFileDialog.FileName, ", false) != 0)
{
base.Cursor = new Cursor(openFileDialog.OpenFile());
}
You can also read files using a combination of the System.IO classes (you'll learn about them next week) and OpenFileDialog, as Listing 3.7 demonstrates.
' Simple Open If OpenFileDialog1.ShowDialog() = DialogResult.OK Then Dim sr As New System.IO.StreamReader(OpenFileDialog1.FileName) MessageBox.Show(sr.ReadToEnd) sr.Close() End If
In the Downloads section for the day, I've included a sample application that uses each of the dialogs in different ways.