Вы разрабатываете MDI-приложение, позволяющее просматривать и редактировать документы в форматах .rtf и .txt. На родительской форме добавлено меню, в нем есть пункты "Cохранить" и "Сохранить как…", в обработчиках которых вызывается перегруженный метод Save: private void mnuSave_Click(object sender, System.EventArgs e){ ChildForm frm = (ChildForm)this.ActiveMdiChild; frm.Save();}private void mnuSaveAs_Click(object sender, System.EventArgs e){ ChildForm frm = (ChildForm)this.ActiveMdiChild; frm.Save("");}
Если текст не был сохранен, то при выборе пункта меню "Cохранить" появляется диалоговое окно SaveFileDialog, а если пользователь редактирует уже созданный документ, то его содержимое сохраняется автоматически. Выбирая пункт меню "Сохранить как…", можно сохранить копию существующего документа. Выберите правильную конструкцию для получения подобной функциональности:
public void Save(string filename){ if(!System.IO.File.Exists(filename)) { saveFileDialog1.FileName = filename; if(saveFileDialog1.ShowDialog(this)==DialogResult.Cancel)return; filename = saveFileDialog1.FileName; } String extension = System.IO.Path.GetExtension(FileName);RichTextBoxStreamType type = (extension == ".rtf")?RichTextBoxStreamType.RichText: RichTextBoxStreamType.PlainText; rtbContents.SaveFile(filename, type); Text = filename; }public void Save(){ Save(FileName);}(Верный ответ)
public void Save(){ if(!System.IO.File.Exists(filename)) { saveFileDialog1.FileName = filename; if(saveFileDialog1.ShowDialog(this)==DialogResult.Cancel)return; filename = saveFileDialog1.FileName; } String extension = System.IO.Path.GetExtension(FileName);RichTextBoxStreamType type = (extension == ".rtf")?RichTextBoxStreamType.RichText: RichTextBoxStreamType.PlainText; rtbContents.SaveFile(filename, type); Text = filename; }public void Save(string filename){ Save(FileName);}
public void Save(string filename){ if(!System.IO.File.Exists(filename)) { saveFileDialog1.FileName = filename; if(saveFileDialog1.ShowDialog(this)==DialogResult.Cancel)return; filename = saveFileDialog1.FileName; } String extension = System.IO.Path.GetExtension(FileName);RichTextBoxStreamType type = (extension == ".rtf")?RichTextBoxStreamType.RichText: RichTextBoxStreamType.PlainText; rtbContents.SaveFile(filename, type); Text = filename; }public void Save(string FileName){ Save(FileName);}
public void Save(FileName){ if(!System.IO.File.Exists(filename)) { saveFileDialog1.FileName = filename; if(saveFileDialog1.ShowDialog(this)==DialogResult.Cancel)return; filename = saveFileDialog1.FileName; } String extension = System.IO.Path.GetExtension(FileName);RichTextBoxStreamType type = (extension == ".rtf")?RichTextBoxStreamType.RichText: RichTextBoxStreamType.PlainText; rtbContents.SaveFile(filename, type); Text = filename; }public void Save(filename){ Save(FileName);}