Создание Windows-приложений на основе Visual C#



OpenFileDialog


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

Добавление OpenFileDialog на форму

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

Свойство FileName задает название файла, которое будет находиться в поле "Имя файла:" при появлении диалога. На рис. рис. 2.8 название в этом поле — "Текстовые файлы", поскольку на рис. рис. 2.9 был введен именно этот текст. Свойство 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(*.*)|*.*";




Содержание  Назад  Вперед