Share via


FileDialog Kelas

Definisi

Menampilkan kotak dialog tempat pengguna dapat memilih file.

public ref class FileDialog abstract : System::Windows::Forms::CommonDialog
public abstract class FileDialog : System.Windows.Forms.CommonDialog
type FileDialog = class
    inherit CommonDialog
Public MustInherit Class FileDialog
Inherits CommonDialog
Warisan
Turunan

Contoh

Contoh kode berikut menggunakan OpenFileDialog implementasi FileDialog dan mengilustrasikan pembuatan, pengaturan properti, dan memperlihatkan kotak dialog. Contoh menggunakan ShowDialog metode untuk menampilkan kotak dialog dan mengembalikan DialogResult. Contohnya memerlukan formulir dengan ditempatkan Button di atasnya dan System.IO namespace layanan ditambahkan ke dalamnya.

private:
   void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      Stream^ myStream;
      OpenFileDialog^ openFileDialog1 = gcnew OpenFileDialog;

      openFileDialog1->InitialDirectory = "c:\\";
      openFileDialog1->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
      openFileDialog1->FilterIndex = 2;
      openFileDialog1->RestoreDirectory = true;

      if ( openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK )
      {
         if ( (myStream = openFileDialog1->OpenFile()) != nullptr )
         {
            // Insert code to read the stream here.
            myStream->Close();
         }
      }
   }
var fileContent = string.Empty;
var filePath = string.Empty;

using (OpenFileDialog openFileDialog = new OpenFileDialog())
{
    openFileDialog.InitialDirectory = "c:\\";
    openFileDialog.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
    openFileDialog.FilterIndex = 2;
    openFileDialog.RestoreDirectory = true;

    if (openFileDialog.ShowDialog() == DialogResult.OK)
    {
        //Get the path of specified file
        filePath = openFileDialog.FileName;

        //Read the contents of the file into a stream
        var fileStream = openFileDialog.OpenFile();

        using (StreamReader reader = new StreamReader(fileStream))
        {
            fileContent = reader.ReadToEnd();
        }
    }
}

MessageBox.Show(fileContent, "File Content at path: " + filePath, MessageBoxButtons.OK);
Private Sub button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    Dim myStream As Stream = Nothing
    Dim openFileDialog1 As New OpenFileDialog()

    openFileDialog1.InitialDirectory = "c:\"
    openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
    openFileDialog1.FilterIndex = 2
    openFileDialog1.RestoreDirectory = True

    If openFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
        Try
            myStream = openFileDialog1.OpenFile()
            If (myStream IsNot Nothing) Then
                ' Insert code to read the stream here.
            End If
        Catch Ex As Exception
            MessageBox.Show("Cannot read file from disk. Original error: " & Ex.Message)
        Finally
            ' Check this again, since we need to make sure we didn't throw an exception on open.
            If (myStream IsNot Nothing) Then
                myStream.Close()
            End If
        End Try
    End If
End Sub

Keterangan

FileDialog adalah kelas abstrak yang berisi perilaku umum untuk OpenFileDialog kelas dan SaveFileDialog . Ini tidak dimaksudkan untuk digunakan secara langsung tetapi berisi perilaku umum untuk dua kelas tersebut. Anda tidak dapat membuat instans FileDialog. Meskipun kelas dinyatakan publik, Anda tidak dapat mewarisinya, karena berisi metode abstrak internal. Untuk membuat kotak dialog untuk memilih atau menyimpan file, gunakan OpenFileDialog atau SaveFileDialog.

FileDialog adalah kotak dialog modal; oleh karena itu, ketika ditampilkan, ia memblokir sisa aplikasi sampai pengguna telah memilih file. Saat kotak dialog ditampilkan secara modal, tidak ada input (keyboard atau klik mouse) yang dapat terjadi kecuali objek pada kotak dialog. Program harus menyembunyikan atau menutup kotak dialog (biasanya sebagai respons terhadap beberapa tindakan pengguna) sebelum input ke program pemanggil dapat terjadi.

Perhatian

Saat Anda menggunakan kelas yang berasal dari FileDialog, seperti OpenFileDialog dan SaveFileDialog, hindari menggunakan literal string yang berisi jalur absolut. Sebagai gantinya, dapatkan jalur secara dinamis menggunakan satu atau beberapa teknik yang dijelaskan dalam tabel berikut.

Jika Anda ingin mengaktifkan pengguna untuk memilih folder alih-alih file, gunakan FolderBrowserDialog.

Tergantung pada jenis aplikasi, bagaimana data yang terkait dengan aplikasi disimpan, dan alasan untuk mengakses sistem file, ada banyak kemungkinan cara di mana Anda dapat membuat jalur direktori. Tabel berikut menunjukkan teknik untuk membuat jalur secara dinamis.

Kategori jalur atau program Kelas dan anggota yang akan digunakan
Jalur Windows standar, seperti File Program, MyDocuments, Desktop dan sebagainya Kelas System.Environment adalah sumber yang paling lengkap untuk ini, baik melalui metode statisnya, seperti SystemDirectory, atau melalui GetFolderPath metode , menggunakan salah Environment.SpecialFolder satu nilai enumerasi.
Jalur yang terkait dengan aplikasi saat ini Kelas Application ini memiliki anggota statis untuk mendapatkan jalur tertentu, seperti StartupPath, , ExecutablePathLocalUserAppDataPath, dan CommonAppDataPath.

Metode GetTempPath dari System.IO.Path mengembalikan jalur folder sementara.

Metode GetCurrentDirectorySystem.IO.Directory kelas mengembalikan direktori eksekusi aplikasi saat ini.

Properti RootDirectory kelas DriveInfo mewakili direktori akar drive yang ditentukan.
Jalur yang disimpan sebagai pengaturan aplikasi Akses properti pengaturan aplikasi yang sesuai dari kelas pembungkus yang berasal dari ApplicationSettingsBase. Untuk informasi selengkapnya, lihat Pengaturan Aplikasi untuk Formulir Windows.
Penyimpanan registri Beberapa aplikasi menyimpan informasi direktori di registri. Kelas Application memiliki CommonAppDataPath properti dan LocalUserAppDataPath yang diselesaikan ke RegistryKey nilai.
Aplikasi ClickOnce Untuk aplikasi ClickOnce, gunakan Application anggota kelas seperti UserAppDataPath, yang akan mengembalikan penunjuk ke direktori data ClickOnce. Untuk informasi selengkapnya, lihat Mengakses Data Lokal dan Jarak Jauh di Aplikasi ClickOnce.
Aplikasi internasional Untuk aplikasi internasional, ambil bagian jalur relatif dari sumber daya string di aplikasi Anda dengan menggunakan System.Resources.ResourceReader kelas . Untuk informasi selengkapnya tentang globalisasi dan pelokalan, lihat topik Globalisasi dan Pelokalan.

Perhatikan bahwa jalur lengkap dapat dibangun menggunakan satu atau beberapa teknik yang dijelaskan. Misalnya, GetFolderPath metode ini dapat digunakan untuk mendapatkan jalur ke folder MyDocuments, maka pengaturan aplikasi dapat digunakan untuk menambahkan bagian subdirektori relatif.

Kelas System.IO.Path berisi anggota statis untuk membantu memanipulasi string jalur absolut dan relatif, sedangkan System.IO.File kelas dan System.IO.Directory memiliki anggota statis yang benar-benar memanipulasi file dan direktori, masing-masing.

Penting

Jika pengguna aplikasi Anda mengubah folder di FileDialog, maka direktori kerja saat ini untuk aplikasi Anda diatur ke lokasi yang ditentukan dalam FileDialog. Untuk mencegah hal ini, atur properti ke RestoreDirectorytrue.

Bidang

EventFileOk

Memiliki FileOk peristiwa.

Properti

AddExtension

Mendapatkan atau mengatur nilai yang menunjukkan apakah kotak dialog secara otomatis menambahkan ekstensi ke nama file jika pengguna menghilangkan ekstensi.

AddToRecent

Mendapatkan atau mengatur nilai yang menunjukkan apakah kotak dialog menambahkan file yang sedang dibuka atau disimpan ke daftar terbaru.

AutoUpgradeEnabled

Mendapatkan atau menetapkan nilai yang menunjukkan apakah instans ini FileDialog harus secara otomatis meningkatkan tampilan dan perilaku saat berjalan di Windows Vista.

CanRaiseEvents

Mendapatkan nilai yang menunjukkan apakah komponen dapat menaikkan peristiwa.

(Diperoleh dari Component)
CheckFileExists

Mendapatkan atau mengatur nilai yang menunjukkan apakah kotak dialog menampilkan peringatan jika pengguna menentukan nama file yang tidak ada.

CheckPathExists

Mendapatkan atau mengatur nilai yang menunjukkan apakah kotak dialog menampilkan peringatan jika pengguna menentukan jalur yang tidak ada.

ClientGuid

Mendapatkan atau mengatur GUID untuk dikaitkan dengan status dialog ini. Biasanya, status seperti folder terakhir yang dikunjungi dan posisi dan ukuran dialog tetap ada berdasarkan nama file yang dapat dieksekusi. Dengan menentukan GUID, aplikasi dapat memiliki status persisten yang berbeda untuk versi dialog yang berbeda dalam aplikasi yang sama (misalnya, dialog impor dan dialog terbuka).

Fungsionalitas ini tidak tersedia jika aplikasi tidak menggunakan gaya visual atau jika AutoUpgradeEnabled diatur ke false.

Container

IContainer Mendapatkan yang berisi Component.

(Diperoleh dari Component)
CustomPlaces

Mendapatkan koleksi tempat kustom untuk instans ini FileDialog .

DefaultExt

Mendapatkan atau mengatur ekstensi nama file default.

DereferenceLinks

Mendapatkan atau mengatur nilai yang menunjukkan apakah kotak dialog mengembalikan lokasi file yang dirujuk oleh pintasan atau apakah mengembalikan lokasi pintasan (.lnk).

DesignMode

Mendapatkan nilai yang menunjukkan apakah Component saat ini dalam mode desain.

(Diperoleh dari Component)
Events

Mendapatkan daftar penanganan aktivitas yang dilampirkan ke ini Component.

(Diperoleh dari Component)
FileName

Mendapatkan atau mengatur string yang berisi nama file yang dipilih dalam kotak dialog file.

FileNames

Mendapatkan nama file dari semua file yang dipilih dalam kotak dialog.

Filter

Mendapatkan atau mengatur string filter nama file saat ini, yang menentukan pilihan yang muncul dalam kotak "Simpan sebagai jenis file" atau "File jenis" dalam kotak dialog.

FilterIndex

Mendapatkan atau mengatur indeks filter yang saat ini dipilih dalam kotak dialog file.

InitialDirectory

Mendapatkan atau mengatur direktori awal yang ditampilkan oleh kotak dialog file.

Instance

Mendapatkan handel instans Win32 untuk aplikasi.

OkRequiresInteraction

Mendapatkan atau mengatur nilai yang menunjukkan apakah tombol OK kotak dialog dinonaktifkan hingga pengguna menavigasi tampilan atau mengedit nama file (jika ada).

Options

Mendapatkan nilai untuk menginisialisasi FileDialog.

RestoreDirectory

Mendapatkan atau mengatur nilai yang menunjukkan apakah kotak dialog memulihkan direktori ke direktori yang dipilih sebelumnya sebelum ditutup.

ShowHelp

Mendapatkan atau mengatur nilai yang menunjukkan apakah tombol Bantuan ditampilkan dalam kotak dialog file.

ShowHiddenFiles

Mendapatkan atau mengatur nilai yang menunjukkan apakah kotak dialog menampilkan file tersembunyi dan sistem.

ShowPinnedPlaces

Mendapatkan atau mengatur nilai yang menunjukkan apakah item yang diperlihatkan secara default di panel navigasi tampilan diperlihatkan.

Site

Mendapatkan atau mengatur ISite dari Component.

(Diperoleh dari Component)
SupportMultiDottedExtensions

Mendapatkan atau mengatur apakah kotak dialog mendukung menampilkan dan menyimpan file yang memiliki beberapa ekstensi nama file.

Tag

Mendapatkan atau mengatur objek yang berisi data tentang kontrol.

(Diperoleh dari CommonDialog)
Title

Mendapatkan atau mengatur judul kotak dialog file.

ValidateNames

Mendapatkan atau menetapkan nilai yang menunjukkan apakah kotak dialog hanya menerima nama file Win32 yang valid.

Metode

CreateObjRef(Type)

Membuat objek yang berisi semua informasi relevan yang diperlukan untuk menghasilkan proksi yang digunakan untuk berkomunikasi dengan objek jarak jauh.

(Diperoleh dari MarshalByRefObject)
Dispose()

Merilis semua sumber daya yang Componentdigunakan oleh .

(Diperoleh dari Component)
Dispose(Boolean)

Merilis sumber daya tidak terkelola yang digunakan oleh Component dan secara opsional merilis sumber daya terkelola.

(Diperoleh dari Component)
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetLifetimeService()
Kedaluwarsa.

Mengambil objek layanan seumur hidup saat ini yang mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
GetService(Type)

Mengembalikan objek yang mewakili layanan yang disediakan oleh Component atau oleh Container.

(Diperoleh dari Component)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
HookProc(IntPtr, Int32, IntPtr, IntPtr)

Menentukan prosedur kait kotak dialog umum yang ditimpa untuk menambahkan fungsionalitas tertentu ke kotak dialog file.

InitializeLifetimeService()
Kedaluwarsa.

Mendapatkan objek layanan seumur hidup untuk mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
MemberwiseClone(Boolean)

Membuat salinan dangkal objek saat ini MarshalByRefObject .

(Diperoleh dari MarshalByRefObject)
OnFileOk(CancelEventArgs)

Memunculkan kejadian FileOk.

OnHelpRequest(EventArgs)

Memunculkan kejadian HelpRequest.

(Diperoleh dari CommonDialog)
OwnerWndProc(IntPtr, Int32, IntPtr, IntPtr)

Menentukan prosedur jendela pemilik yang ditimpa untuk menambahkan fungsionalitas tertentu ke kotak dialog umum.

(Diperoleh dari CommonDialog)
Reset()

Mereset semua properti ke nilai defaultnya.

RunDialog(IntPtr)

Menentukan kotak dialog umum.

ShowDialog()

Menjalankan kotak dialog umum dengan pemilik default.

(Diperoleh dari CommonDialog)
ShowDialog(IWin32Window)

Menjalankan kotak dialog umum dengan pemilik yang ditentukan.

(Diperoleh dari CommonDialog)
ToString()

Menyediakan versi untai (karakter) objek ini.

Acara

Disposed

Terjadi ketika komponen dibuang oleh panggilan ke Dispose() metode .

(Diperoleh dari Component)
FileOk

Terjadi ketika pengguna mengklik tombol Buka atau Simpan pada kotak dialog file.

HelpRequest

Terjadi ketika pengguna mengklik tombol Bantuan pada kotak dialog umum.

(Diperoleh dari CommonDialog)

Berlaku untuk

Lihat juga