Если в вашей системе установлена служба IIS (Internet Information Services), то файл iisstart.htm должен присутствовать в директории С:\Inetpub\wwwroot, которая считается корневой для вашего Web-сервера. Она имеет псевдоним localhost, который считается стартовым адресом (URL) Web-сервера. Второй HTML-документ с именем intro15 мы сейчас создадим в студии и запишем в ту же директорию.
¨ Добавьте к проекту TrySocket новый компонент типа HTML Page с именем Clock.htm.
¨ Поместите в этот файл следующий HTML-код, который взят из предыдущего курса лекций ASP.NET. Отмечу, что новая версия HTML потребовала внести некоторые коррективы (язык стал более строгим).
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Live Clock</title>
<script type="text/jscript">
function SetDate()
{
now = new Date();
hours = now.getHours();
minutes = now.getMinutes();
seconds = now.getSeconds();
clock.time.value = hours + (minutes < 10 ? ":0" : ":") + minutes +
(seconds < 10 ? ":0" : ":") + seconds;
day = now.getDate();
month = now.getMonth() + 1;
year = now.getYear();
clock.date.value = day +"."+ (month < 10 ? "0" : "") + month +"."+ year;
setTimeout (SetDate, 1000);
}
function Move()
{
clock.time.style.pixelLeft -= 7;
clock.time.style.pixelTop++;
timerID = setTimeout ("Move()", 10);
if (clock.time.offsetLeft < clock.date.offsetLeft)
{
clock.time.style.posLeft = clock.date.style.posLeft;
clock.time.style.posTop = 60;
clearTimeout(timerID);
}
}
</script></head>
<body onload="SetDate()" onclick="Move()">
<form action="http://localhost/Clock.htm" id="clock">
<input type="text" readonly="readonly" style="BORDER: #00ff00 ridge; FONT-WEIGHT: bold;
FONT-SIZE: 24px; LEFT: 75%; WIDTH: 150px; COLOR: Lime; POSITION: absolute;
BACKGROUND-COLOR: black; TEXT-ALIGN: center" id="time"/>
<input type="text" readonly="readonly" style="BORDER: #ffccff ridge; FONT-WEIGHT: bold;
FONT-SIZE: 24px; LEFT: 5%; WIDTH: 150px; COLOR:#ffccff; POSITION: absolute;
BACKGROUND-COLOR: black; TEXT-ALIGN: center" id="date"/>
</form></body></html>
¨ Перенесите копию этого файла в корневую папку сервера.
¨ Вновь откройте файл MainForm.cs в режиме редактирования кода и для объекта toolStripCombo создайте обработчик события SelectedIndexChanged.
¨ В тело обработчика вставьте код, который устанавливает документ-источник для нашего браузера.
browser.Url = new Uri(toolStripCombo.SelectedItem.ToString());
¨ Для того, чтобы форма не бездействовала при загрузке, добавьте реакцию на событие Load и в тело обработчика вставьте код, загружающий в браузер другой HTML-документ
browser.Url = new Uri("http://localhost/iisstart.htm");
¨ Сделайте новый проект стартовым и запустите на выполнение.
¨ Выберите в списке адрес нашего документа и вы должны увидеть окно примерно такого вида.
¨ Щелкните левой кнопкой в клиентской области окна и наблюдайте работу кода на языке JScript.
Признаемся, что удобство и мощь нового компонента WebBrowser производит сильное впечатление. Но при чем здесь класс Socket, спросите вы. Действительно, в этом сценарии он не нужен. Покажем, как использовать его для получения HTML-текста нашего документа. Зададимся целью отобразить полученный текст на форме в рамках элемента типа RichTextBox.
¨ Освободите место для элемента RichTextBox. Для этого установите режим причаливания браузера к верхней части формы (свойство Dock должно стать равным Top).
¨ Добавьте элемент RichTextBox с именем richText и расположите его под окном браузера. Его свойство Dock тоже установите в значение Top.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.