なんという事でしょう。
OpenFileDialog と殆ど変わらない。
なので、プログラムも殆ど同じです。
■参考文献
SaveFileDialog クラス
SaveFileDialog コンポーネント (Windows フォーム)
■実行画像
ごてごてな SaveFileDialog
Public Class SaveFileDialogTest
Private Sub SaveFileDialogTest_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
With Me.SaveFileDialog1
' 既定:True
.AddExtension = True
' 存在しないファイルを指定した場合に警告を出す(既定:False)
.CheckFileExists = False
' 存在しないパスを指定した場合に警告を出す(既定:True)
.CheckPathExists = True
' 拡張子が指定されない場合の既定の拡張子を指定
.DefaultExt = "bmp"
' ショートカットを指定した場合、ショートカット自体を選択するか
' 実体を選択するかを指定(既定:True)
.DereferenceLinks = True
' 選択されているファイル名
.FileName = ""
' [ファイルの種類] ボックスに表示される選択肢
.Filter = "ビットマップ(*.bmp)|*.bmp|JPEG(*.jpg;*.jpeg;*.jpe)|*.jpeg;*.jpg;*.jpe|" & _
"GIF(*.gif)|*.gif|TIFF(*.tiff;*.tif)|*.tiff;*.tif|PNG(*.png)|*.png|" & _
"ふじこえでん(*.fujiko.eden)|*.fujiko.eden"
' Filter でいくつか指定した時にどれを最初に表示するか(これだと JPEG が表示)
.FilterIndex = 2
' 既定で選択されてるディレクトリ
.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)
' 上書きする場合の確認メッセージを出すか否か(既定:True)
.OverwritePrompt = True
' Environment.CurrentDirectory をユーザーが指定した場所に変更するか否か(既定:False)
.RestoreDirectory = True
' ヘルプボタンを表示するか否か(既定:False)
.ShowHelp = True
' ダイアログ ボックスが複数のファイル名拡張子をを受け入れるか否か(既定:False)
' Filter で指定した *.fujiko.eden で、hoge.fujiko.eden の拡張子を .eden とするか .fujiko.eden とするか
.SupportMultiDottedExtensions = True
' タイトル
.Title = "保存先をしていしてね"
' 有効な Win32 ファイル名だけを受け入れるかどうか(既定:True)
.ValidateNames = True
End With
End Sub
Private Sub OpenFileDialogTest_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.DoubleClick
' Form をダブルクリックして SaveFileDialog を開く
Dim result As DialogResult = Me.SaveFileDialog1.ShowDialog(Me)
End Sub
' SaveFileDialog で 開くボタン押下時
Private Sub SaveFileDialog1_FileOk(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles SaveFileDialog1.FileOk
Dim filePath As String = Me.SaveFileDialog1.FileName
Dim ext As String = System.IO.Path.GetExtension(filePath).ToLower()
Dim imageFormat As System.Drawing.Imaging.ImageFormat = System.Drawing.Imaging.ImageFormat.Bmp
Select Case ext
Case ".png" : imageFormat = System.Drawing.Imaging.ImageFormat.Png
Case ".gif" : imageFormat = System.Drawing.Imaging.ImageFormat.Gif
Case ".jpeg", ".jpg", ".jpe" : imageFormat = System.Drawing.Imaging.ImageFormat.Jpeg
Case ".tiff", ".tif" : imageFormat = System.Drawing.Imaging.ImageFormat.Tiff
Case Else : imageFormat = System.Drawing.Imaging.ImageFormat.Bmp
End Select
My.Resources.中さん.Save(filePath, imageFormat)
MessageBox.Show(filePath & " に " & Environment.NewLine & _
imageFormat.ToString() & " 形式で保存しました")
End Sub
' SaveFileDialog で ヘルプボタン押下時
Private Sub SaveFileDialog1_HelpRequest(ByVal sender As Object, ByVal e As System.EventArgs) Handles SaveFileDialog1.HelpRequest
Dim ofd As SaveFileDialog = DirectCast(sender, SaveFileDialog)
MessageBox.Show(ofd.Title) ' SaveFileDialog の Title をメッセージ表示
End Sub
End Class