Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

OpenFileDialog и SaveFileDialog для SDI-приложений



При создании MDI-приложений приходится разделять код для открытия и сохранения файлов, как мы делали для приложения Notepad C#. В случае SDI -приложений весь код будет находиться в одном обработчике. Cоздаем новое приложение, называем его TextEditor. На форме размещаем элемент управления TextBox и устанавливаем следующие свойства:

TextBox, свойство Значение
Name txtBox
Dock Fill
Multiline true
Text Да

Добавляем на форму элемент MainMenu, в котором будет всего три пункта — File, Open и Save (свойства этих пунктов см. втаблице 2.1). Из окна ToolBox перетаскиваем элементы OpenFileDialog и SaveFileDialog — свойства этих элементов в точности такие же, как и у диалогов приложения Notepad C#. Переходим в код формы. Подключаем пространство имен для работы с файловыми потоками:

using System.IO;

Добавляем обработчик для пункта меню Open:

private void mnuOpen_Click(object sender, System.EventArgs e)

{

//Показываем диалог выбора файла

openFileDialog1.ShowDialog();

// Переменной fileName присваиваем имя открываемого файла

string fileName = openFileDialog1.FileName;

//Создаем поток fs и открываем файл для чтения.

FileStream filestream= File.Open(fileName, FileMode.Open, FileAccess.Read);

//Проверяем, открыт ли поток, и если открыт, выполняем условие

if(filestream!= null)

{

//Создаем объект streamreader и связываем его с потоком filestream

StreamReader streamreader = new StreamReader(filestream);

//Считываем весь файл и записываем его в TextBox

txtBox.Text = streamreader.ReadToEnd();

//Закрываем поток.

filestream.Close();

}

}

2.8.

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

private void mnuSave_Click(object sender, System.EventArgs e)

{

//Показываем диалог выбора файла

saveFileDialog1.ShowDialog();

// В качестве имени сохраняемого файла устанавливаем переменную fileName

string fileName=saveFileDialog1.FileName;

//Создаем поток fs и открываем файл для записи.

FileStream filestream = File.Open(fileName, FileMode.Create, FileAccess.Write);

//Проверяем, открыт ли поток, и если открыт, выполняем условие

if(filestream!= null)

{

//Создаем объект streamwriter и связываем его с потоком filestream

StreamWriter streamwriter = new StreamWriter(filestream);

//Записываем данные из TextBox в файл

streamwriter.Write(txtBox.Text);

//Переносим данные из потока в файл

streamwriter.Flush();

//Закрываем поток

filestream.Close();

}

}

2.9.

Запускаем приложение. Как уже отмечалось, элемент управления TextBox имеет встроенное контекстное меню, поддерживает сочетание клавиш для редактирования, а диалоговые окна открытия и сохранения позволяют этому простейшему приложению работать с внешними файлами.





Дата публикования: 2014-12-11; Прочитано: 345 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2025 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.088 с)...