Программирование >>  Программирование с использованием ajax 

1 ... 261 262 263 [ 264 ] 265 266 267 ... 396


else if (root is XmlText) {

Печатать текст.

string text = ((XmlText)root).Value;

listBoxResult.Items.Add(text.PadLeft(text.Length + indent));

else if (root is XmlComment) {

Печатать текст, string text = root.Value;

listBoxResult.Items.Add(text.PadLeft(text.Length + indent));

Проверить наличие дочерних узлов, и если они есть, вызвать этот же метод для их печати, if (root.HasChildNodes) RecurseXmlDocument(root.FirstChild, indent + 2);

private void RecurseXmlDocument(XmlNode root, int indent)

Ничего не делать, если root равен null, if (root == null) return;

if (root is XmlElement) Корень имеет тип XmlElement {

Сначала напечатать имя.

listBoxResult.Items.Add(root.Name.PadLeft(root.Name.Length + indent));

Проверить наличие дочерних узлов, и если они есть, вызвать этот же метод для их печати, if (root.HasChildNodes) RecurseXmlDocument(root.FirstChild, indent + 2);

Наконец, проверить наличие соседних узлов и если они есть, вызвать этот же метод для их печати, if (root.NextSibling != null) RecurseXmlDocument(root.NextSibling, indent);

else if (root is XmlText) {

Напечатать текст.

string text = ( (XmlText)root).Value;

listBoxResult.Items.Add(text.PadLeft(text.Length + indent));

else if (root is XmlComment) {

Напечатать текст, string text = root.Value;

listBoxResult.Items.Add(text.PadLeft(text.Length + indent));

Проверить наличие дочерних узлов, и если они есть, вызвать этот же метод для их печати, if (root.HasChildNodes) RecurseXmlDocument(root.FirstChild, indent + 2);

Наконец, проверить наличие соседних узлов и если они есть, вызвать этот же метод для их печати, if (root.NextSibling != null) RecurseXmlDocument(root.NextSibling, indent);



private void ClearListBox () {

listBoxResult.Items.Clear();

private void buttonClose Click(object sender, EventArgs e) (

Application.Exit ();

6. Вставьте код для выполнения запросов к XML в событие SelectionChange переключателей. Вставляйте каждое событие по двойному щелчку на переключателях:

private void radioButtonSelectRoot CheckedChanged(object sender, EventArgs e) {

mCurrentNode = mDocument.DocumentElement.SelectSingleNode( books ) ; ClearListBox 0;

RecurseXmlDocument(mCurrentNode, 0) ;

private void radioButtonSelectAllAuthors CheckedChanged(object sender,

EventArgs e)

if (mCurrentNode != null) {

XmlNodeList nodeList = mCurrentNode.SelectNodes( book/author ) ; ClearListBox 0; DisplayList(nodeList);

else ClearListBox 0;

private void radioButtonSelectBySpecificAuthor CheckedChanged(object sender,

EventArgs e)

if (mCurrentNode != null) {

XmlNodeList nodeList =

mCurrentNode.SelectNodes( book[author=Jacob Hammer Pedersen] ); ClearListBox 0; DisplayList(nodeList);

else ClearListBox 0;

private void radioButtonSelectAllBooks CheckedChanged(object sender,

EventArgs e)

if (mCurrentNode 1= null) {

XmlNodeList nodeList = mCurrentNode.SelectNodes( book ); ClearListBox(); DisplayList(nodeList);

else ClearListBox 0;



private void radioButtonSetBookAsCurrent CheckedChanged(object sender,

EventArgs e)

if (mCurrentNode != null) {

mCurrentNode =

mCurrentNode.SelectSingleNode( book[title=Beginning Visual C#] ); ClearListBox 0;

RecurseXmlDocumentNoSiblings(mCurrentNode, 0) ;

else ClearListBox 0;

private void radioButtonSetBooksAsCurrent CheckedChanged(object sender,

EventArgs e)

if (mCurrentNode != null) (

mCurrentNode = mCurrentNode.SelectSingleNode( books ); ClearListBox 0;

RecurseXmlDocumentNoSiblings(mCurrentNode, 0) ;

else ClearListBox 0;

private void radioButtonSelectAllChildren CheckedChanged(object sender,

EventArgs e)

if (mCurrentNode != null) {

XmlNodeList nodeList = mCurrentNode.SelectNodes( * ); ClearListBox(); DisplayList(nodeList);

else ClearListBox0;

7. И, наконец, вставьте код, который выполнится, когда пользователь введет что-нибудь в текстовом поле, и код, который закроет приложение по щелчку на кнопке buttonClose:

private void buttonExecute Click(object sender, EventArgs e) {

if (textBoxQuery.Text == )

return; try

XmlNodeList nodeList = mCurrentNode.SelectNodes(textBoxQuery.Text); ClearListBox 0; DisplayList(nodeList);

catch (System.Exception err) {

MessageBox.Show(err.Message);



1 ... 261 262 263 [ 264 ] 265 266 267 ... 396

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика