Стандартные диалоговые окна

Содержание

Слайд 2

Диалоговым окном называется окно стандартного размера без кнопок максимизации и минимизации.

Диалоговым окном называется окно стандартного размера без кнопок максимизации и минимизации.


Диалоговое окно - это такое окно, которое временно появляется поверх приложения и запрашивает различную информацию.
Слайд 3

Имеются два вида диалоговых окон модальные и немодальные. Модальные(modal). Пока открыто

Имеются два вида диалоговых окон модальные и немодальные.
Модальные(modal).
Пока открыто

модальное диалоговое окно, пользователь не может работать ни с каким другим окном программы.
Например, Open File – “Открытие файла”.
Немодальные(modeless).
Пока открыто немодальное диалоговое окно, работать с другими окнами программы можно.
Например, Find and Replace – “Найти и заменить” редактора Microsoft Word.
Слайд 4

В .NET существует несколько стандартных классов, которые позволяют организовать диалог программы

В .NET существует несколько стандартных классов, которые позволяют организовать диалог программы

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

OpenFileDialog - панель выбора файлов для открытия файлов
SaveFileDialog - панель выбора файлов для сохранения на диске
ColorDialog - панель для выбора цвета
FontDialog - панель для выбора шрифта
PrintDialog - панель для вывода документа на печать

Слайд 5

Общая схема применения стандартных диалогов

Общая схема применения стандартных диалогов

Слайд 6

Порядок работы с любым стандартным диалогом может быть следующим: выбрать необходимый

Порядок работы с любым стандартным диалогом может быть следующим:
выбрать необходимый элемент

и разместить его на форме;
определить как будет вызываться этот диалог.
Обычно это делается по щелчку мыши по кнопке (на форме должен быть объект типа Button) или выбор определяем в каком-то пункте меню (устанавливаем на форму объект типа MenuStrip);
затем создать обработчик событий для кнопки или пункта меню (в зависимости от того, что выбрано в пункте 2).
Практически всегда обработчик событий будет иметь такой вид:
Слайд 7

void Имя_Click(object sender, EventArgs e) { ....................................... if(Диалог.ShowDialog()== DialogResult.OK) { //

void Имя_Click(object sender, EventArgs e)
{
.......................................
if(Диалог.ShowDialog()== DialogResult.OK)
{
// Выполнение

каких-либо действий.
// Обычно — это применение выбранных в окне диалога параметров
}
}

Здесь
Имя_Click() — имя обработчика событий, задаётся системой автоматически;
Диалог — имя объекта нужного класса-диалога. Чаще используют то имя, что даст система.
Например, объект OpenFileDialog получит по умолчанию имя openFileDialog1.

Общая схема применения стандартных диалогов

Слайд 8

В среде Visual C# (Windows Fоrms) имеется возможность обращаться к внешним

В среде Visual C# (Windows Fоrms) имеется возможность обращаться к внешним

файлам: отображать информацию из файла на форме, помещать информацию с формы в файл и т.п.
Рассмотрим работу с текстовыми файлами в простейшем варианте – с помощью специальных элементов управления.

OpenFileDialog - Панель выбора файлов для открытия файлов
SaveFileDialog - Панель выбора файлов для сохранения на диске

Классы OpenFileDialog и SaveFileDialog

Слайд 9

Элемент управления OpenFileDialog

Элемент управления OpenFileDialog

Слайд 10

Компонент позволяет пользователям просматривать папки на компьютере или на любом компьютере

Компонент позволяет пользователям просматривать папки на компьютере или на любом компьютере

в сети и выбрать один или несколько файлов для открытия.
Диалоговое окно возвращает путь и имя файла, который пользователь выбрал в диалоговом окне.

Никаких ограничений на тип файла нет, пользова­тель может выбрать любой файл.
Объект OpenFileDialog позволяет активизировать традиционное диалоговое окно Open (Открыть).

Слайд 11

Отображение диалога Открыть обеспечивает метод ShowDialog. if (openFileDialog1.ShowDialog() == DialogResult.OK) {

Отображение диалога Открыть обеспечивает метод ShowDialog.

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

{
//вывод имени выбранного файла
MessageBox.Show(openFileDialog1.FileName);
}
Слайд 12

Слайд 13

Слайд 14

Title InitialDirectory Filter FileName

Title

InitialDirectory

Filter

FileName

Слайд 15

private void button1_Click(object sender, EventArgs e) { openFileDialog1.SupportMultiDottedExtensions = true; openFileDialog1.Filter

private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.SupportMultiDottedExtensions = true;

openFileDialog1.Filter = "Все файлы (*.*)|*.*|text files (*.txt)|*.txt|CSarp files (*.cs)|*.cs";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string s = null, t = "";
StreamReader read = File.OpenText(openFileDialog1.FileName);
while ((s = read.ReadLine()) != null)
{
t += s + "\r\n";
}
textBox1.Text = t;
read.Close();
}
}

Открытие файла с помощью компонента OpenFileDialog

Слайд 16

private void button3_Click(object sender, EventArgs e) { openFileDialog1.InitialDirectory = "c:\\"; openFileDialog1.Filter

private void button3_Click(object sender, EventArgs e)
{
openFileDialog1.InitialDirectory = "c:\\";
openFileDialog1.Filter =

"txt files (*.txt)|*.txt|All files (*.*)|*.*";
openFileDialog1.FilterIndex = 2;
openFileDialog1.RestoreDirectory = true;
if (openFileDialog1.ShowDialog() == DialogResult.Ok)
// получаем выбранный файл
string filename = openFileDialog1.FileName;
// читаем файл в строку
string fileText =System.IO.File.ReadAllText(filename,Encoding.Default);
textBox1.Text = fileText;
MessageBox.Show("Файл открыт");
}
Слайд 17

Компонент SaveFileDialog Компонент позволяет пользователям просматривать файловую систему и выбирать файлы

Компонент SaveFileDialog

Компонент позволяет пользователям просматривать файловую систему и выбирать файлы

для сохранения.
Диалоговое окно возвращает путь и имя файла, который пользователь выбрал в диалоговом окне.
Тем не менее для фактического сохранения файла на диск необходимо написать специальный код.
Слайд 18

SaveFileDialog предоставляет пользователю возмож­ность просматривать файловую систему компьютера, чтобы выбрать место

SaveFileDialog предоставляет пользователю возмож­ность просматривать файловую систему компьютера, чтобы выбрать место

для сохра­нения файла.
Разработчик приложения и само приложение не могут получить никакой информации о том, в какой папке сохраняется файл, какие файлы уже есть в этой папке и т.д.
Объект SaveFileDialog предоставляет приложению только поток, в который можно писать данные.
Слайд 19

Слайд 20

Слайд 21

CheckPathExists Признак необходимости проверки существования каталога, в котором следует сохранить файл.

CheckPathExists
Признак необходимости проверки существования каталога, в котором следует сохранить файл.


Если указанного каталога
нет, то выводится информационное сообщение
Слайд 22

Слайд 23

private void button1_Click(object sender, EventArgs e) { saveFileDialog1.Filter = "text files

private void button1_Click(object sender, EventArgs e)
{
saveFileDialog1.Filter = "text

files (*.txt)|*.txt";
if(saveFileDialog1.ShowDialog()== DialogResult.OK)
{
name_file=saveFileDialog1.FileName;
StreamWriter w = File.CreateText(name_file);
w.WriteLine(textBox1.Text);
w.Close();
}
}

Сохранить файл с помощью элемента saveFileDialog

Слайд 24

private void button2_Click(object sender, EventArgs e) { saveFileDialog1.Filter = "txt files

private void button2_Click(object sender, EventArgs e)
{
saveFileDialog1.Filter = "txt

files (*.txt)|*.txt|All files (*.*)|*.*";
saveFileDialog1.FilterIndex = 2;
saveFileDialog1.RestoreDirectory = true;
if (saveFileDialog1.ShowDialog() == DialogResult.Cancel)
return;
// получаем выбранный файл
string filename = saveFileDialog1.FileName;
// сохраняем текст в файл
System.IO.File.WriteAllText(filename, textBox1.Text);
MessageBox.Show("Файл сохранен");
}
Слайд 25

Элемент управления ColorDialog ColorDialog позволяет выбрать настройки цвета

Элемент управления ColorDialog

ColorDialog позволяет выбрать настройки цвета

Слайд 26

Он делает возможным выбор цвета в диалоговом окне, работает точно так

Он делает возможным выбор цвета в диалоговом окне, работает точно так

же, как и остальные диалоговые компоненты: выполняется метод ShowDialog(), открывается палитра цветов, из которой нужно выбрать необходимый цвет.
Значение цвета помещается в свойство Color компонента, после чего цвет может использоваться в дальнейшем.
Слайд 27

Среди свойств ColorDialog следует отметить следующие: FullOpen: при значении true отображается

Среди свойств ColorDialog следует отметить следующие:
FullOpen: при значении true отображается диалоговое окно с

расширенными настройками для выбора цвета
SolidColorOnly: при значении true позволяет выбирать только между однотонные оттенки цветов
Color: выбранный в диалоговом окне цвет
Слайд 28

1 2 3 4

1

2

3

4

Слайд 29

private void button1_Click(object sender, EventArgs e) { if (colorDialog1.ShowDialog()== DialogResult.OK) {

private void button1_Click(object sender, EventArgs e)
{
 if (colorDialog1.ShowDialog()== DialogResult.OK)
    {
      textBox1.ForeColor

= colorDialog1.Color;
    }
}

private void button2_Click(object sender, EventArgs e)
{
 if (colorDialog1.ShowDialog()== DialogResult.OK)
    {
      textBox1.BackColor = colorDialog1.Color;
    }
}

Слайд 30

Элемент управления FontDialog Компонент находится в списке Dialogs палитры компонентов, обеспечивает

Элемент управления FontDialog

Компонент находится в списке Dialogs палитры компонентов, обеспечивает выбор

шрифта и его атрибутов (стиля, размера, цвета и т. п.) в диалоговом режиме.
После выбора нужного шрифта его название попадает в свойство компонента Font. Компонент работает, как и предыдущий.
Слайд 31

FontDialog имеет ряд свойств, среди которых стоит отметить следующие: ShowColor: при

FontDialog имеет ряд свойств, среди которых стоит отметить следующие:
ShowColor: при значении true позволяет

выбирать цвет шрифта
Font: выбранный в диалоговом окне шрифт
Color: выбранный в диалоговом окне цвет шрифта

Для отображения диалогового окна используется метод ShowDialog()

Слайд 32

private void button1_Click(object sender, EventArgs e) { fontDialog1.ShowColor = true; fontDialog1.Font

private void button1_Click(object sender, EventArgs e)
{
fontDialog1.ShowColor = true;
fontDialog1.Font =

textBox1.Font;
fontDialog1.Color = textBox1.ForeColor;
if (fontDialog1.ShowDialog() != DialogResult.Cancel)
{
textBox1.Font = fontDialog1.Font;
textBox1.ForeColor = fontDialog1.Color;
}}
Слайд 33

Элемент управления PrintDialog C помощью этого элемента можно открыть диалоговое окно

Элемент управления PrintDialog

C помощью этого элемента можно открыть диалоговое окно настройки

печати, где надо выбрать принтер, а также страницы, которые следует печатать, и установить некоторые свойства печати.
Слайд 34

private void button5_Click(object sender, EventArgs e) { if (printDialog1.ShowDialog()== DialogResult.OK) {

private void button5_Click(object sender, EventArgs e)
{
if (printDialog1.ShowDialog()== DialogResult.OK)
{
printDocument1.Print();

}
}

Непосредственно печать документа осуществляется с помощью метода Print(), который вызывается из экземпляра printDocument1. Предварительно выводится диалоговое окно печати.

Слайд 35

Слайд 36

Компонент WebBrowser

Компонент WebBrowser

Слайд 37

Компонент WebBrowser представляет собой окно небольшого браузера, в котором можно отображать

Компонент WebBrowser представляет собой окно небольшого браузера, в котором можно отображать содержимое какой-нибудь

html-страницы. Документ html может находится на данной машине или на удалённой — это не имеет особого значения.