Skip to content

OpenFileDialog, SaveFileDialog

OpenFileDialog

Класа OpenFileDialog из именског простора System.Windows.Forms служи за приказ стандардног дијалога за отварање фајлова.

Ову класу, односно њена својства и методе можемо користити на више начина. Најједноставнији начин је да поставимо контролу openFileDialog из Toolbox-а и подесимо њена својства у Solution Explorer-у, као у Задатку 1.

Задатак 1

Креирајте Windows Desktop апликацију која приказује садржај учитаног текстуалног фајла.

На форму ћемо поставити једно дугме, један текст бокс и контролу openFileDialog1.

Прво ћемо унети следећа својства контроле openFileDialog1:

  • Title: Otvori tekstualni fajl
  • DefaultExt: txt
  • Filter: Tekstualni fajlovi (.txt)|*.txt
  • InitialDirectory: %userprofile%\Documents

Након тога ћемо унети код догађаја за клик на дугме (не заборавите да укључите System.IO у заглављу јер радимо са фајловима):

using System;
using System.IO;
using System.Windows.Forms;

namespace openFileDialogProgram
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
                textBox1.Text = File.ReadAllText(openFileDialog1.FileName);
        }
    }
}

Сва својства контроле која смо уносили у Solution Explorer-у могли смо унети и у коду програма:

        private void button1_Click(object sender, EventArgs e)
        {
            openFileDialog1.InitialDirectory = @"%userprofile%\Documents";
            openFileDialog1.Title = "Otvori tekstualni fajl";
            openFileDialog1.DefaultExt = "txt";
            openFileDialog1.Filter = "Tekstualni fajlovi (.txt)|*.txt";
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
                textBox1.Text = File.ReadAllText(openFileDialog1.FileName);
        }

Контролу openFileDialog1 могли смо такође креирати директно у коду програма:

OpenFileDialog openFileDialog1 = new OpenFileDialog();

SaveFileDialog

Класа SaveFileDialog из именског простора System.Windows.Forms служи за приказ стандардног дијалога за чување фајлова.

Задатак 2

Проширите претходну Windows Desktop апликацију са опцијом за чување садржаја текст бокса у фајл.

На форму ћемо поставити још једно дугме “Sačuvaj kao…”. Унесимо код за догађај за клик на то дугме:

        private void button2_Click(object sender, EventArgs e)
        {
            saveFileDialog1.InitialDirectory = @"%userprofile%\Documents";
            saveFileDialog1.Title = "Sačuvaj tekstualni fajl";
            saveFileDialog1.DefaultExt = "txt";
            saveFileDialog1.Filter = "Tekstualni fajlovi (.txt)|*.txt";
            if (saveFileDialog1.ShowDialog() == DialogResult.OK)
                File.WriteAllText(saveFileDialog1.FileName, textBox1.Text);
        }

FontDialog и ColorDialog

        private void button3_Click(object sender, EventArgs e)
        {
            fontDialog1.ShowDialog();
            textBox1.Font = fontDialog1.Font;
        }

        private void button4_Click(object sender, EventArgs e)
        {
            colorDialog1.ShowDialog();
            textBox1.BackColor = colorDialog1.Color;
        }