1

我有一个包含一些内容的文本框。我还有一个按钮 (SAVE),它可以打开 FileSaveDialog 并允许将内容保存在 .txt 文件中。

XAML:

<TextBox Height="93" IsReadOnly="True" Text="{Binding Path=ReadMessage, Mode=TwoWay}" Name="MessageRead" />

<Button Content="Save" Command="{Binding Path=SaveFileCommand}" Name="I2CSaveBtn" />

视图模型:

private string _readMessage = string.Empty;
    public string ReadMessage
    {
        get
        {
            return _readMessage;
        }
        set
        {
            _readMessage = value;
            NotifyPropertyChanged("ReadMessage");
        }
    }

public static RelayCommand SaveFileCommand { get; set; }

private void RegisterCommands()
    {            
        SaveFileCommand = new RelayCommand(param => this.ExecuteSaveFileDialog());
    }
private void ExecuteSaveFileDialog()
    {
        //What To Do HERE???
    }

我基本上需要的是读取文本框的内容,打开文件保存对话框并将其存储在要保存在我的系统中的文本文件中。

4

2 回答 2

7

使用SaveFileDialog你可以按照这些思路做一些事情

string fileText = ReadMessage; 

SaveFileDialog dialog = new SaveFileDialog() 
{ 
    Filter = "Text Files(*.txt)|*.txt|All(*.*)|*" 
}; 

if (dialog.ShowDialog() == true) 
{ 
     File.WriteAllText(dialog.FileName, fileText); 
} 
于 2012-09-27T09:34:26.923 回答
2

尝试这样的事情:

SaveFileDialog saveFileDialog1 = new SaveFileDialog();
   saveFileDialog1.Filter = "Text file|*.txt";
   saveFileDialog1.Title = "Save an Image File";
   saveFileDialog1.ShowDialog();

   // If the file name is not an empty string open it for saving.
   if(saveFileDialog1.FileName != "")
   {
 System.IO.File.WriteAllText(saveFileDialog1.FileName, MessageRead.Text);
}
于 2012-09-27T09:36:48.620 回答