Чтение онлайн

на главную - закладки

Жанры

C# для профессионалов. Том II

Ватсон Карли

Шрифт:

</author>

<price>8.99</price>

 </book>

 <book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">

<title>The Confidence Man</title>

<author>

<first-name>Herman</first-name>

<last-name>Melville</last-name>

</author>

<price>11.99</price>

 </book>

 <book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6"> 

<title>The Gorgias</title>

<author>

<name>Plato</name>

</author>

<price>9.99</price>

 </book>

</bookstore>

Рассмотрим

пример кода, использующего MSXML 3.0 для загрузки окна списка с номерами ISBN из
books.xml
. Ниже записан код, который можно найти в папке
SampleBase1
архива, загружаемого с web-сайта издательства Wrox. Можно скопировать его в Visual Studio IDE или создать новую форму Windows Form с самого начала. Эта форма содержит элементы управления
listbox
и
button
. Оба элемента используют имена по умолчанию
listBox1
и
button1
:

namespace SampleBase {

 using System;

 using System.Drawing;

 using System.Collections;

 using System.ComponentModel;

 using System.Windows.Forms;

 using System.Data;

Затем включается пространство имен для ссылки на

msxml3.dll
. Помните, что ссылку на эту библиотеку необходимо включать в проект (ее можно найти на вкладке COM диалогового окна Add Reference).

 using MSXML2;

 /// <summary>

 /// Краткое описание Form1.

 /// </summary>

 public class Form1 : System.Windows.Forms.Form {

private System.Windows.Forms.ListBox listBox1;

private System.Windows.Forms.Button button1;

/// <summary>

/// Необходимая для Designer переменная.

/// </summary>

private System.ComponentModel.Container components;

Затем объявляется документ DOM на уровне модуля:

private DOMDocument30 doc;

public Form1 {

//

// Требуется для поддержки Windows Form Designer

//

InitializeComponent;

//

// TODO: Добавьте любой код конструктора после вызова

// InitializeComponent

//

}

/// <summary>

///
Очистить все использованные ресурсы.

/// </summary>

public override void Disposed {

base.Dispose;

if (components != null) components.Dispose;

}

#region Windows Form Designer создает код

/// <summary>

/// Необходимый для поддержки Designer метод — не изменяйте

/// содержимое этого метода редактором кода.

/// </summary>

private void InitializeComponent {

this.listBox1 = new System.Windows.Forms.ListBox;

this.button1 = new System.Windows.Forms.Button;

this.listBox1.Anchor = ((System.Windows.Forms.AnchorStyles.Top |

System.Windows.Forms.AnchorStyles.Left) |

System.Windows.Forms.AnchorStyles.Right);

this.listBox1.Size = new System.Drawing.Size(336, 238);

this.listBox1.TabIndex = 0;

this.listBox1.SelectedIndexChanged += new System.EventHandler(this.listBox1_SelectedIndexChanged);

this.button1.Anchor = System.Windows.Forms.AnchorStyles.Bottom;

this.button1.Location = new System.Drawing.Point(136, 264);

this.button1.TabIndex = 1;

this.button1.Text = "button1";

this.button1.Click += new System.EventHandler(this.button1_Click);

this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);

this.ClientSize = new System.Drawing.Size(339, 320);

this.Controls.AddRange(new System.Windows.Forms.Control[]{this.button1, this.listBox1});

this.Text = "Form1";

}

#endregion

/// <summary>

/// Главная точка входа для приложения.

/// </summary>

[STAThread]

static void Main {

Application.Run(new Form1);

}

Мы хотим взять номер ISBN из

listbox
и, используя простой поиск
XPath
, найти узел книги, который ему соответствует, и вывести текст узла (заглавие книги и цену) в
MessageBox
. Язык пути доступа XML (XPath) является нотацией XML, которая может использоваться для запроса и фильтрации текста в документе XML. Рассмотрим XPath в .NET позже в этой главе. Вот код обработчика событий для выбора записи в окне списка:

Поделиться:
Популярные книги

Идеальный мир для Лекаря 8

Сапфир Олег
8. Лекарь
Фантастика:
юмористическое фэнтези
аниме
7.00
рейтинг книги
Идеальный мир для Лекаря 8

Адвокат Империи 10

Карелин Сергей Витальевич
10. Адвокат империи
Фантастика:
городское фэнтези
аниме
дорама
попаданцы
5.00
рейтинг книги
Адвокат Империи 10

Вперед в прошлое 10

Ратманов Денис
10. Вперед в прошлое
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Вперед в прошлое 10

Кодекс Охотника. Книга XXVII

Винокуров Юрий
27. Кодекс Охотника
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга XXVII

Древесный маг Орловского княжества 3

Павлов Игорь Васильевич
3. Орловское княжество
Фантастика:
аниме
сказочная фантастика
фэнтези
попаданцы
гаремник
5.00
рейтинг книги
Древесный маг Орловского княжества 3

Кодекс Охотника. Книга XXIX

Винокуров Юрий
29. Кодекс Охотника
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга XXIX

Имперец. Том 5

Романов Михаил Яковлевич
4. Имперец
Фантастика:
попаданцы
альтернативная история
аниме
6.00
рейтинг книги
Имперец. Том 5

Кровь на клинке

Трофимов Ерофей
3. Шатун
Фантастика:
боевая фантастика
попаданцы
альтернативная история
6.40
рейтинг книги
Кровь на клинке

Последний Герой. Том 5

Дамиров Рафаэль
5. Последний герой
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Последний Герой. Том 5

Княжья Русь

Мазин Александр Владимирович
6. Варяг
Приключения:
исторические приключения
9.04
рейтинг книги
Княжья Русь

Наследие Маозари 5

Панежин Евгений
5. Наследие Маозари
Фантастика:
фэнтези
юмористическое фэнтези
5.00
рейтинг книги
Наследие Маозари 5

Черный Маг Императора 9

Герда Александр
9. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Черный Маг Императора 9

Анти-Ксенонская Инициатива

Вайс Александр
7. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
космоопера
5.00
рейтинг книги
Анти-Ксенонская Инициатива

Наша навсегда

Зайцева Мария
2. Наша
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Наша навсегда