Компонент WebBrowser представляет собой окно небольшого браузера, в котором можно отображать содержимое какой-нибудь html-страницы. Документ html может находится на данной машине или на удалённой — это не имеет особого значения.
Это новый компонент, он появился только в .NET 2.0.
Рассмотрим пример использования этого компонента.
Создадим оконное приложение. На форме расположим 3 компонента: MenuStrip — для создания меню программы, OpenFileDialog — для работы со стандартным окном диалога по выбору открываемого файла и WebBrowser — для отображения в его окне текста файла в формате html.
По-умолчанию компонент MenuStrip будет иметь имя menuStrip1. В меню создадим пункт Файл и в нём Открыть (свойство Name для него мною задано MnuFileOpen) и Выход (свойство Name имеет значение MnuFileExit). Пункт меню Открыть предназначен для выбора имени файла, который мы хотим открывать в окне компонента WebBrowser, и собственно для открытия файла.
Компонент OpenFileDialog по-умолчанию получил значение свойства Name openFileDialog1, а компонент WebBrowser — webBrowser1. Оставим это без изменения.
Создадим обработчики для пунктов меню Открыть и Выход.
Вот текст основного файла программы:
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
namespace Prim_WebBrowser1
{
/// <summary>
/// Description of MainForm.
/// </summary>
public partial class MainForm : Form
{
string nameStr;
public MainForm()
{
InitializeComponent();
}
void MnuFileExitClick(object sender, EventArgs e)
{
Close();
}
void MnuFileOpenClick(object sender, EventArgs e)
{
openFileDialog1.Filter = "HTML files (*.html)|*.html";
if(openFileDialog1.ShowDialog()== DialogResult.OK)
{
nameStr=openFileDialog1.FileName;
webBrowser1.Url = new System.Uri(nameStr);
}
}
}
}
В обработчике MnuFileOpenClick(), который срабатывает по нажатию на пункт меню Открыть, вначале определяем с какими файлами мы будет работать. Делается это с помощью своеобразного фильтра — свойства Filter для объекта класса OpenFileDialog:
openFileDialog1.Filter = "HTML files (*.html)|*.html";
Свойство Filter — это строка символов, состоящая из двух частей, разделённых символом | (вертикальная черта). В первой части даём пояснение о том, какие файлы нам требуются для отбора (у нас это файлы html ("HTML files (*.html)"), а во второй части записывается сам шаблон для отбора, который уже будет обрабатываться в программе (здесь это "*.html", т. е. любые файлы с расширением html).
Далее записываем оператор
if(openFileDialog1.ShowDialog()== DialogResult.OK)
{ .............}
Здесь в условии оператора if делается проверка факта: выбрал пользователь файл, подходящий под наш фильтр, или нет. Если «Да», т. е. он выбрал файл и нажал на кнопку «Открыть» в окне диалога, то выполняются действия, записанные в блоке ветви «Да» оператора if. Главное — это получить имя выбранного файла:
nameStr=openFileDialog1.FileName;
а затем это имя указываем в качестве адреса той web-страницы, которую надо открыть:
webBrowser1.Url = new System.Uri(nameStr);
Всё, нужная страница будет открыта в окне программы.
Замечание. Запоминать имя файла в строке nameStr, конечно, совсем необязательно. Это может быть необходимо в том случае, когда надо выполнять какие-то действия с именами открываемых файлов (например, учитывать, какие файлы уже открывались, выводить имена файлов на печать и т. д.).
|
|
|