web-dev-qa-db-ja.com

C#保存ダイアログボックスのファイルパスを取得

ボタンを押すとポップアップする保存ダイアログボックスがあります。ただし、その時点ではファイルを保存したくないので、名前を取得して、ボタンの横のテキストボックスに配置し、後で使用できるようにします。

保存ダイアログボックスからファイルパスを取得して後で使用する方法を教えてもらえますか?

17
Mister Dev

以下は、私が非常に高速に記述したサンプルコードです。Console.Writeの代わりに、パスを変数に格納して後で使用することができます。

SaveFileDialog saveFileDialog1 = new SaveFileDialog(); 
saveFileDialog1.InitialDirectory = Convert.ToString(Environment.SpecialFolder.MyDocuments); 
saveFileDialog1.Filter = "Your extension here (*.EXT)|*.ext|All Files (*.*)|*.*" ; 
saveFileDialog1.FilterIndex = 1; 

if(saveFileDialog1.ShowDialog() == DialogResult.OK) 
{ 
    Console.WriteLine(saveFileDialog1.FileName);//Do what you want here
} 
47

テキストボックスのアドレス指定...

if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
    this.textBox1.Text = saveFileDialog.FileName;
}
4
Inisheer
private void mnuFileSave_Click(object sender, EventArgs e)
{
    dlgFileSave.Filter = "RTF Files|*.rtf|"+"Text files (*.txt)|*.txt|All files (*.*)|*.*";
    dlgFileSave.FilterIndex = 1;
    if (dlgFileSave.ShowDialog() == System.Windows.Forms.DialogResult.OK && dlgFileSave.FileName.Length > 0)
    {
        foreach (string strFile in dlgFileSave.FileNames)
        {
            SingleDocument document = new SingleDocument();
            document.rtbNotice.SaveFile(strFile, RichTextBoxStreamType.RichText);
            document.MdiParent = this;
            document.Show();
        }
    }
}
3
Nidz