[Windows] 「名前を付けて保存」機能を実装する

ここでは、「名前を付けて保存」メニューの機能として「名前を付けて保存」コモンダイアログを表示する機能を実装します。
広 告
目次
前提条件
- 「ダイアログのキャンセルを考慮する」が実施済であること
動作確認環境
- Windows10 64bit
- Visual Studio Express 2015 for Windows Desktop
1. 「名前を付けて保存」コモンダイアログを表示する
ここでは、「名前を付けて保存」メニューをクリックした時に「名前を付けて保存」コモンダイアログ(共通ダイアログ)を表示する実装について説明します。
まずはデザイン画面を表示します。

ツールボックスウィンドウから「ダイアログ」→「SaveFileDialog」を選択し、デザインウィンドウのフォーム上にドラッグ&ドロップします。
ダイアログの「Name」プロパティを「SaveFileDialog」に変更します。
次に、「名前を付けて保存」メニューをクリック時にコモンダイアログを表示する機能を実装します。
デザインウィンドウで「名前を付けて保存」メニューをダブルクリックしMenuItemFileSaveAs_Click()
メソッドを追加します。このメソッドは「名前を付けて保存」メニューをクリックしたときに実行されるメソッドです。
「名前を付けて保存」コモンダイアログを表示するためのコードは以下のとおりです。
「名前を付けて保存」コモンダイアログを表示する
private void MenuItemFileSaveAs_Click(object sender, EventArgs e) { if (DialogResult.OK == SaveFileDialog.ShowDialog()) { // 「開く」ボタンがクリックされたとき SaveFile(SaveFileDialog.FileName); } } private void SaveFile(string value) { System.IO.File.WriteAllText(value, textBox.Text, Encoding.GetEncoding("Shift_JIS")); }
ファイルを保存するコード
private void SaveFile(string value) { System.IO.File.WriteAllText(value, textBox.Text, Encoding.GetEncoding("Shift_JIS")); }
SaveFile()メソッド内のSystem.IO.File.WriteAllText()メソッドで、入力されたテキストをテキストファイルで保存しています。
以上が、「名前を付けて保存」ダイアログを表示させる方法についての説明です。
2. プログラムを実行して結果を確認する
これまでの手順の実行結果は以下の通りです。

メニュー項目から「名前を付けて保存」を選択すると、「名前を付けて保存」コモンダイアログが表示されるのが確認できます。

ファイル名に「test.txt」と入力し「保存」ボタンをクリックすると、「tese.txt」という名前のファイルが保存されてファイルが作成されていることが確認できます。
ファイルを開くとテキストボックスに入力してあった値が書かれていることが確認できます。
次は「「ファイルの種類」プルダウンを表示する」です。