「名前を付けて保存」ダイアログボックスを表示する

「名前を付けて保存」ダイアログボックスを表示するコードを紹介します。

プログラム例

UI

"Widowsフォームアプリケーション"プロジェクトを新規作成します。プロジェクト作成後フォームを開きます。下図のデザイナ画面が表示されます。


ツールボックスを表示し、[ダイアログ]のカテゴリの"SaveFileDialog"をクリックして選択します。選択後フォームにドラッグ&ドロップします。


フォームにドロップできるとデザイナの下部に"saveFileDialog1"が追加されます。ダイアログボックス以外にButtonとTextBoxを1つずつ配置します。

コード

下記のコードを記述します。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace FileSave
{
  public partial class FormMain : Form
  {
    public FormMain()
    {
      InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
      DialogResult dr = saveFileDialog1.ShowDialog();
      if (dr == System.Windows.Forms.DialogResult.OK) {
        textBox1.Text = saveFileDialog1.FileName;
      }
    }
  }
}

解説

DialogResult dr = saveFileDialog1.ShowDialog();
にて、[名前を付けて保存]ダイアログボックスを表示します。ダイアログボックスの操作結果がDialogResult型の戻り値として返されます。
if (dr == System.Windows.Forms.DialogResult.OK) {
  textBox1.Text = saveFileDialog1.FileName;
}
ダイアログの操作結果が[OK]の場合(DialogResult.OK)にテキストボックスに[名前を付けて保存]ダイアログで指定したファイル名を表示します。DialogResult.OKはダイアログの[保存]ボタンを押してファイルを保存する操作が確定された場合の戻り値です。

実行結果

プロジェクトを実行します。下図のウィンドウが表示されます。


button1をクリックします。[名前を付けて保存]ダイアログボックスが表示されます。


ダイアログボックスに[ファイル名]の欄に名前を入力します。入力ができたら[保存]ボタンをクリックします。


テキストボックスに[名前を付けて保存]ダイアログで指定したファイル名のフルパスが表示されます。


著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
掲載日: 2012-05-26
iPentec all rights reserverd.