- •Общая часть
- •Работа с файлами
- •Работа со строками в c#
- •1.5 Работа с WebBrowser в c# Работаем с WebBrowser в Windows Forms приложениях
- •Создание html Editor
- •Расширяем функционал html Editor
- •Специальная часть
- •2.1.3Скрин
- •2.2.2Листинг
- •2.2.3Скрин
- •2.3.1Постановка задачи
- •2.3.2Листинг
- •2.3.3Скрин
- •2.4.1Постановка задачи
- •2.4.2Листинг
- •2.4.3Скрин
Специальная часть
2.1.1.Постановка задачи
Создать Button и ComboBox “программно”
2.1.2Листинг
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// Создание кнопки без панели элементов управления:
var Кнопка = new Button();
var combo = new ComboBox();
// Задаем свойства кнопки:
// Задаем свойства кнопки:
Кнопка.Visible = true;
combo.Visible = true;
// Ширина и высота кнопки:
Кнопка.Size = new Size(150, 30);
combo.Size = new Size(121, 21);
// Расположение кнопки в системе координат формы:
Кнопка.Location = new Point(70, 80);
combo.Location = new Point(22, 182);
Кнопка.Text = "Новая кнопка";
// Добавление кнопки в коллекцию элементов управления
this.Controls.Add(Кнопка);
this.Controls.Add(combo);
// Подписку на событие Click для кнопки можно делать "вручную".
// Связываем событие Click с процедурой обработки этого события:
Кнопка.Click += new EventHandler(КЛИК);
}
private void КЛИК(object sender, EventArgs e)
{
MessageBox.Show("Нажата новая кнопка");
}
}
}
2.1.3Скрин
2.2.1Постановка задачи
Программа, используя класс WebClient, читает веб-страницу Центрального банка РФ www.cbr.ru, ищет в ее гипертекстовой разметке курс доллара США и копирует его в текстовую метку Label. Кроме того, элемент управления графическое поле PictureBox отображает логотип банка, используя URL-адрес этого изображения
2.2.2Листинг
// Программа, используя класс WebClient, читает веб-страницу Центрального
// банка РФ www.cbr.ru, ищет в ее гипертекстовой разметке курс доллара
// США и копирует его в текстовую метку Label. Кроме того, элемент
// управления графическое поле PictureBox отображает логотип банка,
// используя URL-адрес этого изображения
using System;
using System.Drawing;
using System.Windows.Forms;
// Другие директивы using удалены, поскольку они не используются в данной
// программе
namespace РазборВебСтраницы
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
this.Text = "Сведения от банка России";
// Создаем объект для чтения веб-страницы:
var КЛИЕНТ = new System.Net.WebClient();
// Если веб-страница записана в кодировке Win1251, то чтобы
// русские буквы читались корректно, следует объявлявить
// объект Кодировка:
// var Кодировка = System.Text.Encoding.GetEncoding(1251);
System.IO.Stream ПОТОК;
String СТРОКА;
string STROKA;
try
{
// Попытка открытия веб-ресурса:
ПОТОК = КЛИЕНТ.OpenRead("http://www.cbr.ru/");
}
catch (Exception Ситуация)
{
СТРОКА = String.Format(
"www.cbr.ru" + "\n{0}", Ситуация.Message);
label1.Text = СТРОКА;
return;
}
// Чтение HTML-разметки веб-страницы в кодировке
// Unicode (по умолчанию):
var Читатель = new System.IO.StreamReader(ПОТОК); //, Кодировка);
// Копируем HTML-разметку в строковую переменную:
СТРОКА = Читатель.ReadToEnd();
// Ищем в HTML-разметке страницы курс доллара США:
var i = СТРОКА.IndexOf("Доллар США");
СТРОКА = СТРОКА.Substring(i, 300);
i = СТРОКА.IndexOf(" ");
i = i -1;
СТРОКА = СТРОКА.Substring(i+7,7);
// Вставляем текущую дату:
СТРОКА = String.Format(
"Курс доллара США на {0:D}:\n" +
"{1} руб за $1 USD", DateTime.Now, СТРОКА);
ПОТОК.Close();
// Копируем в текстовую метку найденный курс доллара:
label1.Text = СТРОКА;
// В графическом поле отображаем логотип Центрального банка:
pictureBox1.ImageLocation =
"http://www.cbr.ru/images/main_logo.gif";
}
}
}
