Ватсон Карли
Шрифт:
/XMLChapter/Sample1
/XMLChapter/Sample2
/XMLChapter/Sample3
и т. д. Файлы XML должны находиться в подкаталоге XMLChapter, а код для примеров должен быть в подкаталогах Sample1, Sample2 и т.д. Можно называть каталоги как угодно, но их относительное положение важно. Можно также изменять примеры, чтобы указать желаемое направление. В коде примеров будут сделаны указания, какие строки изменить.
Файл books.xml выглядит следующим образом:
<?xml version='1.0'?>
<!-- Этот файл представляет фрагмент базы данных учета запасов книжного склада -->
<bookstore>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</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 создает код