FileDialog Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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 |
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) |