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

OpenFileDialog



Добавьте на форму frmmain элемент управления OpenFileDialog из окна панели инструментов ToolBox. Подобно элементу MainMenu, он будет располагаться на панели невидимых компонент (рис. 2.12):


увеличить изображение
Рис. 2.12. Добавление OpenFileDialog на форму

Свойство FileName задает название файла, которое будет находиться в поле "Имя файла:" при появлении диалога. На рис. рис. 2.12 название в этом поле — "Текстовые файлы", поскольку на рис. рис. 2.11 был введен именно этот текст. Свойство Filter задает ограничение файлов, которые могут быть выбраны для открытия — в окне будут показываться только файлы с заданным расширением. Через вертикальную разделительную линию можно задать смену типа расширения, отображаемого в выпадающем списке "Тип файлов". Здесь введено Text Files (*.txt)|*.txt|All Files(*.*)|*.* что означает обзор либо текстовых файлов, либо всех. Свойство InitialDirectory позволяет задать директорию, откуда будет начинаться обзор. Если это свойство не установлено, исходной директорией будет рабочий стол.

Для работы с файловыми потоками в коде формы blank подключаем пространство имен System.IO:

using System.IO;

В методе Open считываем содержимое файла в RichTextBox:

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

public void Open(string OpenFileName)

{

//Если файл не выбран, возвращаемся назад (появится встроенное предупреждение)

if (OpenFileName == "")

{

return;

}

else

{

//Создаем новый объект StreamReader и передаем ему переменную //OpenFileName

StreamReader sr = new StreamReader(OpenFileName);

//Читаем весь файл и записываем его в richTextBox1

richTextBox1.Text = sr.ReadToEnd();

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

sr.Close();

//Переменной DocName присваиваем адресную строку

DocName = OpenFileName;

}

}

2.4.

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

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

{

//Можно программно задавать доступные для обзора расширения файлов

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

//Если выбран диалог открытия файла, выполняем условие

if (openFileDialog1.ShowDialog() == DialogResult.OK)

{

//Создаем новый документ

blank frm = new blank();

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

frm.Open(openFileDialog1.FileName);

//Указываем, что родительской формой является форма frmmain

frm.MdiParent = this;

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

frm.DocName = openFileDialog1.FileName;

//Свойству Text формы присваиваем переменную DocName

frm.Text = frm.DocName;

//Вызываем форму frm

frm.Show();

}

}

2.5.

Запускаем приложение и открываем текстовый файл, сохраненный в формате блокнота (рис. 2.13).


Рис. 2.13. Заголовок формы представляет собой адрес и имя открытого файла

Для корректного чтения кириллицы текст в блокноте должен быть сохранен в кодировке Unicode. К сожалению, встроенные диалоговые окна OpenFileDialog Visual Studio.NET не содержат дополнительного поля, позволяющего выбирать кодировку файла при его открытии или сохранении, как это реализовано, например, в блокноте.





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



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