Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






SaveFileDialog






Для сохранения файлов необходимо добавить элемент управления SaveFileDialog на форму. Cвойства этого диалога в точности такие же, как у OpenFileDialog.

В листинге 7.7 рассматривается пример работы с компонентом SaveFileDialog из дочерней формы.

Листинг 7.7 Пример работы компонента SaveFileDialog

//Создаем метод Save, в качестве параметра объявляем строку адреса файла.

public void Save(String SaveFileName) {

if (SaveFileName == null) {

return;

}

else {

StreamWriter sw = new StreamWriter(SaveFileName);

//Содержимое richTextBox1 записываем в файл

sw.WriteLine(richTextBox1.Text);

sw.Close();

//Устанавливаем в качестве имени документа название //сохраненного файла

DocName = SaveFileName;

}

}

 

//Добавляем обработчик пункта меню Save формы frmmain:

private void mnuSave_Click(object sender, EventArgs e) {

saveFileDialog1.Filter = " Text Files (*.txt)|*.txt|All Files(*.*)|*.*";

if (saveFileDialog1.ShowDialog() ==.DialogResult.OK) {

//Переключаем фокус на данную форму.

blank frm = (blank)(this.ActiveMdiChild);

//Вызываем метод Save формы blank

frm.Save(saveFileDialog1.FileName);

frm.MdiParent = this;

frm.DocName = saveFileDialog1.FileName;

frm.Text = frm.DocName;

}

}

Теперь файлы можно открывать, редактировать и сохранять. Однако, при сохранении внесенных изменений в уже сохраненном файле вместо его перезаписи вновь появляется окно SaveFileDialog. Для того, чтобы можно было сохранять и перезаписывать файл в конструкторе формы необходимо отключить доступность пункта меню Save: mnuSave.Enabled = false;

Переключаемся в режим дизайна формы frmmain и добавляем пункт меню Save As после пункта Save. Устанавливаем следующие свойства этого пункта: Name — mnuSaveAs, Shortcut — Ctrl+Shift+S, Text Save & As. В обработчике Save As вставляем вырезанный обработчик пункта Save и добавляем включение доступности Save: mnuSave.Enabled = true;

Для того, чтобы сохранять изменения как в только что сохраненных документах, так и в документах, созданных ранее и открытых для редактирования, необходимо добавить еще один пункт меню SaveAs и добавить в метод Open включение доступности пункта меню Save:

private void mnuOpen_Click(object sender, EventArgs e) {

mnuSave.Enabled = true;

}

Обработчик пункта Save для перезаписи файла будет выглядеть следующим образом:

private void mnuSave_Click(object sender, EventArgs e) {

//Переключаем фокус на данную форму.

blank frm = (blank) (this.ActiveMdiChild);

//Вызываем метод Save формы blank

frm.Save(frm.DocName);

}






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.