FileDialog.FileNames FileDialog.FileNames FileDialog.FileNames FileDialog.FileNames Property

定義

ダイアログ ボックスで選択されたすべてのファイルの名前を取得します。Gets the file names of all selected files in the dialog box.

public:
 property cli::array <System::String ^> ^ FileNames { cli::array <System::String ^> ^ get(); };
[System.ComponentModel.Browsable(false)]
public string[] FileNames { get; }
member this.FileNames : string[]
Public ReadOnly Property FileNames As String()

プロパティ値

String[]

ダイアログ ボックスで選択されたすべてのファイルの名前を含む String 型の配列。An array of type String, containing the file names of all selected files in the dialog box.

次のコード例には、イメージの数を選択して表示にできますPictureBoxフォーム上のコントロール。The following code example allows the user to select a number of images and display them in PictureBox controls on a Form. 初期化を示します、OpenFileDialogで、設定、TitleFilterプロパティ、およびユーザーが設定して、複数のファイルを選択できるように、Multiselectプロパティを true にします。It demonstrates initializing an OpenFileDialog, setting the Title and Filter properties, and allowing the user to select multiple files by setting the Multiselect property to true. このコード例では、フォームが既に持っている、OpenFileDialogという名前のコントロールopenFileDialog1Buttonという名前SelectFileButton、およびFlowLayoutPanelというflowLayoutPanel1This code example assumes that your form already has an OpenFileDialog control named openFileDialog1, a Button named SelectFileButton, and a FlowLayoutPanel named flowLayoutPanel1.

private void Form1_Load(object sender, EventArgs e)
{
    InitializeOpenFileDialog();
}

private void InitializeOpenFileDialog()
{
    // Set the file dialog to filter for graphics files.
    this.openFileDialog1.Filter =
        "Images (*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|" +
        "All files (*.*)|*.*";

    // Allow the user to select multiple images.
    this.openFileDialog1.Multiselect = true;
    this.openFileDialog1.Title = "My Image Browser";
}

private void selectFilesButton_Click(object sender, EventArgs e)
{
    DialogResult dr = this.openFileDialog1.ShowDialog();
    if (dr == System.Windows.Forms.DialogResult.OK)
    {
        // Read the files
        foreach (String file in openFileDialog1.FileNames) 
        {
            // Create a PictureBox.
            try
            {
                PictureBox pb = new PictureBox();
                Image loadedImage = Image.FromFile(file);
                pb.Height = loadedImage.Height;
                pb.Width = loadedImage.Width;
                pb.Image = loadedImage;
                flowLayoutPanel1.Controls.Add(pb);
            }
            catch (SecurityException ex)
            {
                // The user lacks appropriate permissions to read files, discover paths, etc.
                MessageBox.Show("Security error. Please contact your administrator for details.\n\n" +
                    "Error message: " + ex.Message + "\n\n" +
                    "Details (send to Support):\n\n" + ex.StackTrace
                );
            }
            catch (Exception ex)
            {
                // Could not load the image - probably related to Windows file system permissions.
                MessageBox.Show("Cannot display the image: " + file.Substring(file.LastIndexOf('\\'))
                    + ". You may not have permission to read the file, or " +
                    "it may be corrupt.\n\nReported error: " + ex.Message);
            }
        }
    }
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    InitializeOpenFileDialog()
End Sub

Private Sub SelectFileButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SelectFileButton.Click
    Dim dr As DialogResult = Me.OpenFileDialog1.ShowDialog()
    If (dr = System.Windows.Forms.DialogResult.OK) Then
        ' Read the files
        Dim file As String
        For Each file In OpenFileDialog1.FileNames
            ' Create a PictureBox for each file, and add that file to the FlowLayoutPanel.
            Try
                Dim pb As New PictureBox()
                Dim loadedImage As Image = Image.FromFile(file)
                pb.Height = loadedImage.Height
                pb.Width = loadedImage.Width
                pb.Image = loadedImage
                FlowLayoutPanel1.Controls.Add(pb)
            Catch SecEx As SecurityException
                ' The user lacks appropriate permissions to read files, discover paths, etc.
                MessageBox.Show("Security error. Please contact your administrator for details.\n\n" & _
                    "Error message: " & SecEx.Message & "\n\n" & _
                    "Details (send to Support):\n\n" & SecEx.StackTrace)
            Catch ex As Exception
                ' Could not load the image - probably permissions-related.
                MessageBox.Show(("Cannot display the image: " & file.Substring(file.LastIndexOf("\"c)) & _
                ". You may not have permission to read the file, or " + "it may be corrupt." _
                & ControlChars.Lf & ControlChars.Lf & "Reported error: " & ex.Message))
            End Try
        Next file
    End If
End Sub

Public Sub InitializeOpenFileDialog()
    ' Set the file dialog to filter for graphics files.
    Me.OpenFileDialog1.Filter = _
            "Images (*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|" + _
            "All files (*.*)|*.*"

    ' Allow the user to select multiple images.
    Me.OpenFileDialog1.Multiselect = True
    Me.OpenFileDialog1.Title = "My Image Browser"
End Sub

注釈

各ファイル名には、ファイルのパスと、拡張機能の両方が含まれています。Each file name includes both the file path and the extension. ファイルが選択されていない場合、このメソッドは空の配列を返します。If no files are selected, this method returns an empty array.

セキュリティ

FileIOPermission
ファイル名を取得します。to get the file names. AllAccess (関連する列挙体)Associated enumeration: AllAccess.

適用対象

こちらもご覧ください