新しいファイルを作成する際、上記ダイアログを表示してフォルダ・ファイル名を指定させるにはSaveFileDialogを用います。(既存ファイルを選択させる場合はオープンファイルダイアログご参照)
SaveFileDialog
ダイアログを表示するには ~.ShowDialog() を用います。
「保存」を選択した判定はDialogResult.OK を用います。
ファイル名の取得は~.FileNameを用います。
/* インスタンスの初期化 */
SaveFileDialog SFD = new SaveFileDialog();
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
SaveFileDialog SFD = new SaveFileDialog();
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
初期フォルダを設定する
ダイアログを表示した際、特定のフォルダを開くようにするには~.InitialDirectoryを用います。
/* インスタンスの初期化 */
SaveFileDialog SFD = new SaveFileDialog();
/* 初期フォルダ */
SFD.InitialDirectory = @"c:\test\";
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
SaveFileDialog SFD = new SaveFileDialog();
/* 初期フォルダ */
SFD.InitialDirectory = @"c:\test\";
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
尚、特定のフォルダはEnvironment.GetFolderPath(Environment.SpecialFolder.特定のフォルダ)で設定する事ができます。
特定のフォルダ | 場所 |
---|---|
ApplicationData | C:\Users\・・・\AppData\Roaming |
CommonApplicationData | C:\ProgramData |
CommonProgramFiles | C:\Program Files\Common Files |
Cookies | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Cookies |
Desktop | デスクトップ |
DesktopDirectory | デスクトップ |
Favorites | お気に入り |
History | C:\Users\・・・\AppData\Local\Microsoft\Windows\History |
InternetCache | C:\Users\・・・\AppData\Local\Microsoft\Windows\Temporary Internet Files |
LocalApplicationData | C:\Users\・・・\AppData\Local |
MyComputer | ドキュメント? |
MyDocuments | ドキュメント |
MyMusic | ミュージック |
MyPictures | ピクチャ |
Personal | ドキュメント? |
ProgramFiles | C:\Program Files |
Recent | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Recent (最近使った項目) |
SendTo | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\SendTo |
StartMenu | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Start Menu (スタートメニュー) |
Startup | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup |
System | C:\Windows\System32 |
Templates | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Templates |
/* インスタンスの初期化 */
SaveFileDialog SFD = new SaveFileDialog();
/* 初期フォルダ */
SFD.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Favorites);
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
SaveFileDialog SFD = new SaveFileDialog();
/* 初期フォルダ */
SFD.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Favorites);
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}