C# OpenFileDialog kullanımı

Mayıs 16, 2017 Mustafa BÜKÜLMEZ 0 Yorum

Selamlar arkdaşlar,
Bu dersimizde C# OpenFileDialog kullanımı öğreneceğiz.
Hemen kodlarımıza geçelim.
C#
OpenFileDialog file = new OpenFileDialog();  
Bu kod ile OpenFileDialog tanımlamasını yapıyoruz.
C#
private void btnDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    file.ShowDialog();  // openfiledialog ekranını açıyoruz.
}  
C#
private void btnDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    file.Filter = "Excel Dosyası |*.xlsx";   
    // dosya filtresi için bu kodu kullanıyoruz. Şuan sadece xlsx dosyalarını görecektir.
    file.ShowDialog();  
}  
C#
private void btnDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    file.Filter = "Excel Dosyası |*.xlsx| Excel Dosyası|*.xls";  
    // burada gördüğünüz gibi iki adet filtre verdik.
    file.FilterIndex = 2;  
    // bu kod ile varsayılan olarak 2. filtre ile açılacaktır.
    file.ShowDialog();  
}  
C#
private void btnDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    file.InitialDirectory = "C:";  
    // bu kod ile her zaman C bölümünü açacaktır. Yani açıldığında C bölümünü gösterecek.
    file.Filter = "Excel Dosyası |*.xlsx| Excel Dosyası|*.xls";  
    file.FilterIndex = 2;  
    file.ShowDialog();  
}  
C#
private void btnDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    file.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);  
    //öncekinden farkı her açıldığında masaüstünü gösterecektir.
    // masaüstünü göstermek istiyorum ama kullanıcı adı farkından olmuyor diye düşünüyorsanız
    file.Filter = "Excel Dosyası |*.xlsx| Excel Dosyası|*.xls";  
    file.FilterIndex = 2;  
    file.ShowDialog();  
}  
C#
private void btnDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    //file.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);  
    file.Filter = "Excel Dosyası |*.xlsx| Excel Dosyası|*.xls";  
    file.FilterIndex = 2;  
    file.RestoreDirectory = true;     
    // bu kod ile her açıldığında açılan bir önceki klasörü açacaktır.
    file.ShowDialog();  
}  
C#
private void btnDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    file.Filter = "Excel Dosyası |*.xlsx| Excel Dosyası|*.xls";  
    file.FilterIndex = 2;  
    file.RestoreDirectory = true;  
    file.CheckFileExists = false;  
    // bu kod dosya adı kısmına bir isim yazdığınızda dosya var mı yok mu kontrolünü yapar.
    file.ShowDialog();  
}  
C#
private void btnDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    file.Filter = "Excel Dosyası |*.xlsx| Excel Dosyası|*.xls";  
    file.FilterIndex = 2;  
    file.RestoreDirectory = true;  
    file.CheckFileExists = false;  
    file.Title = "Excel Dosyası Seçiniz..";  
    // pencerenin üstünde varsayılan olarak "Aç" yazar bu kod ile başlığı değiştirebiliriz.
    file.ShowDialog();  
}  
C#
private void buttonDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    //file.Filter = "Excel Dosyası |*.xlsx| Excel Dosyası|*.xls";  
    file.FilterIndex = 2;  
    file.RestoreDirectory = true;  
    file.CheckFileExists = false;  
    file.Title = "Excel Dosyası Seçiniz..";  
    file.ShowDialog();  
  
    string DosyaYolu = file.FileName;  
    // seçilen dosyanın tüm yolunu verir
    string DosyaAdi = file.SafeFileName;  
    // sçeilen dosyanın adını verir.
}  
Bazı durumlarda dosyanın seçilip seçilmediğini kontrol etmemiz gerekmektedir. Normal şartlarda dosya adı seçilmediğinde geri null değer döner. Çoğu zaman sorun yaşamayız ama bazı durumlarda kontrol etmemiz gerekmektedir. Bu gibi durumlarda;
C#
private void buttonDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    file.Filter = "Excel Dosyası |*.xlsx| Excel Dosyası|*.xls";  
    file.FilterIndex = 2;  
    file.RestoreDirectory = true;  
    file.CheckFileExists = false;  
    file.Title = "Excel Dosyası Seçiniz..";  
  
    if (file.ShowDialog() == DialogResult.OK)  
    {  
        // dosya seçildi ise
        string DosyaYolu = file.FileName;  
        string DosyaAdi = file.SafeFileName;  
    }  
}  
Genel olarak bu kodlar işimize yarar ama bazen çoklu seçim yapmamız gerekir. Bu gibi durumlarda;
C#
private void buttonDosyaSec_Click(object sender, EventArgs e)  
{  
    OpenFileDialog file = new OpenFileDialog();  
    //file.Filter = "Excel Dosyası |*.xlsx| Excel Dosyası|*.xls";  
    file.FilterIndex = 2;  
    file.RestoreDirectory = true;  
    file.CheckFileExists = false;  
    file.Title = "Excel Dosyası Seçiniz..";  
    file.Multiselect = true;  
    // bu kod çoklu seçim yapabilmemizi sağlar.
  
    if (file.ShowDialog() == DialogResult.OK)  
    {  
        string DosyaYolu = file.FileName;  
        string DosyaAdi = file.SafeFileName;  
    }  
}  
seçilen dosya birden fazla ise dosya yollarını FileNames, dosya adılarını ise SafeFileNames' e string dizi olarak setlemektedir. Bu dizilerdeki bilgileri nasıl alacağımıza gelirsek de;
C#
string[] dosya = fileNames;
for (int i = 0; i < fileNames.Length; i++)
{
     ListViewItem li = new ListViewItem(dosya);
     ListView1.Items.Add(li);
}
label1.Text = dosya.Length.ToString()+" dosya eklendi.";

C#
file.Reset();
// openfiledialog ayarlarını sıfırlar
Bu dersimizde bu kadar arkadaşlar diğer derslerde görüşmek üzere.
Bol Kodlu Günler
https://mustafabukulmez.com/

0 Yorum: