我需要实现类似于记事本的保存选项的东西。假设我在 a 旁边放置了一个按钮RichTextBox
,我想要的是,当单击此按钮时,将打开一个对话框,该对话框看起来类似于单击另存为时出现的对话框。我想通过在保存对话框中输入文件名以文本格式保存 RichTextBox 的内容。
问问题
19289 次
6 回答
10
private void Save_As_Click(object sender, EventArgs e)
{
SaveFileDialog _SD = new SaveFileDialog();
_SD.Filter = "Text File (*.txt)|*.txt|Show All Files (*.*)|*.*";
_SD.FileName = "Untitled";
_SD.Title = "Save As";
if (__SD.ShowDialog() == DialogResult.OK)
{
RTBox1.SaveFile(__SD.FileName, RichTextBoxStreamType.UnicodePlainText);
}
}
于 2011-09-14T13:01:13.850 回答
7
对于WPF,您应该使用此SaveFileDialog。
var dialog = new Microsoft.Win32.SaveFileDialog();
dialog.Filter = "Rich Text File (*.rtf)|*.rtf|All Files (*.*)|*.*";
dialog.FileName = "Filename.rtf"; //set initial filename
if (dialog.ShowDialog() == true)
{
using (var stream = dialog.OpenFile())
{
var range = new TextRange(myRichTextBox.Document.ContentStart,
myRichTextBox.Document.ContentEnd);
range.Save(stream, DataFormats.Rtf);
}
}
于 2011-09-14T11:59:36.690 回答
2
这适用于文本文件,并在WPF
.
var dialog = new Microsoft.Win32.SaveFileDialog();
dialog.Filter = "Text documents (.txt)|*.txt|All Files (*.*)|*.*";
dialog.FileName = "Filename.txt";
if (dialog.ShowDialog() == true)
{
File.WriteAllText(dialog.FileName, MyTextBox.Text);
}
于 2014-02-17T22:57:53.617 回答
1
误读了问题 - 雷的回答对 OP 有效
这仅适用于 Windows 窗体。
你应该看看 SaveFileDialog 类:http: //msdn.microsoft.com/en-us/library/system.windows.forms.savefiledialog.aspx
并使用类似这样的方式保存文件(请参见此处):
rtf.SaveFile(dialog.FileName);
于 2011-09-14T11:58:17.223 回答
1
SaveFileDialog sfDialog = new SaveFileDialog();
sfDialog.ShowDialog();
OutputStream ostream = new FileOutputStream(new File(sfDialog.FileName));
WorkBook.write(ostream);
ostream.close();
于 2011-09-14T12:00:27.503 回答
0
您可以使用一个SaveFileDialog
组件,在此处阅读以了解它的工作原理和工作示例。
于 2011-09-14T11:58:20.750 回答