XmlNodeChangedEventHandler デリゲートとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > XmlNodeChangedEventHandler デリゲートの意味・解説 

XmlNodeChangedEventHandler デリゲート

NodeChanged、NodeChanging、NodeInserted、NodeInserting、NodeRemoved、NodeRemoving の各イベント処理するメソッド表します

名前空間: System.Xml
アセンブリ: System.Xml (system.xml.dll 内)
構文構文

Public Delegate Sub XmlNodeChangedEventHandler
 ( _
    sender As Object, _
    e As XmlNodeChangedEventArgs _
)
Dim instance As New XmlNodeChangedEventHandler(AddressOf
 HandlerMethod)
public delegate void XmlNodeChangedEventHandler
 (
    Object sender,
    XmlNodeChangedEventArgs e
)
public delegate void XmlNodeChangedEventHandler
 (
    Object^ sender, 
    XmlNodeChangedEventArgs^ e
)
/** @delegate */
public delegate void XmlNodeChangedEventHandler
 (
    Object sender, 
    XmlNodeChangedEventArgs e
)
JScript では、デリゲート使用できますが、新規に宣言することはできません。

パラメータ

sender

イベントソース

e

イベント データ格納している XmlNodeChangedEventArgs。

解説解説
使用例使用例

NodeChanged イベントおよび NodeInserted イベント処理する方法の例を次に示します

Imports System
Imports System.IO
Imports System.Xml

Namespace Microsoft.Samples.Xml

    Public Class Sample

        Private Const filename As
 String = "book.xml"

        Public Shared Sub
 Main()

            Dim mySample As Sample = New
 Sample()
            mySample.Run(filename)
        End Sub

        Public Sub Run(ByVal
 args As String)

            ' Create and load the XML document.
            Console.WriteLine("Loading file {0} ...",
 args)
            Dim doc As XmlDocument = New
 XmlDocument()
            doc.Load(args)

            'Create the event handlers.
            AddHandler doc.NodeChanged, AddressOf
 MyNodeChangedEvent
            AddHandler doc.NodeInserted, AddressOf
 MyNodeInsertedEvent

            ' Change the book price.
            doc.DocumentElement.LastChild.InnerText = "5.95"

            ' Add a new element.
            Dim newElem As XmlElement = doc.CreateElement("style")
            newElem.InnerText = "hardcover"
            doc.DocumentElement.AppendChild(newElem)

            Console.WriteLine()
            Console.WriteLine("Display the modified XML...")
            Console.WriteLine(doc.OuterXml)

        End Sub

        ' Handle the NodeChanged event.
        Private Sub MyNodeChangedEvent(ByVal
 source As Object, ByVal
 args As XmlNodeChangedEventArgs)
            Console.Write("Node Changed Event: <{0}> changed",
 args.Node.Name)
            If Not (args.Node.Value Is
 Nothing) Then
                Console.WriteLine(" with value  {0}",
 args.Node.Value)
            Else
                Console.WriteLine("")
            End If
        End Sub

        ' Handle the NodeInserted event.
        Private Sub MyNodeInsertedEvent(ByVal
 source As Object, ByVal
 args As XmlNodeChangedEventArgs)
            Console.Write("Node Inserted Event: <{0}> inserted",
 args.Node.Name)
            If Not (args.Node.Value Is
 Nothing) Then
                Console.WriteLine(" with value {0}",
 args.Node.Value)
            Else
                Console.WriteLine("")
            End If
        End Sub

    End Class

End Namespace
using System;
using System.IO;
using System.Xml;

namespace Microsoft.Samples.Xml
{
    public class Sample
    {
        private const String filename = "book.xml";

        public static void
 Main()
        {
            Sample mySample = new Sample();
            mySample.Run(filename);
        }

        public void Run(String args)
        {

            // Create and load the XML document.
            Console.WriteLine("Loading file {0} ...", args);
            XmlDocument doc = new XmlDocument();
            doc.Load(args);

            //Create the event handlers.
            doc.NodeChanged += new XmlNodeChangedEventHandler(this.MyNodeChangedEvent);
            doc.NodeInserted += new XmlNodeChangedEventHandler(this.MyNodeInsertedEvent);

            // Change the book price.
            doc.DocumentElement.LastChild.InnerText = "5.95";

            // Add a new element.
            XmlElement newElem = doc.CreateElement("style");
            newElem.InnerText = "hardcover";
            doc.DocumentElement.AppendChild(newElem);

            Console.WriteLine("\r\nDisplay the modified XML...");
            Console.WriteLine(doc.OuterXml);

        }

        // Handle the NodeChanged event.
        private void MyNodeChangedEvent(Object
 source, XmlNodeChangedEventArgs args)
        {
            Console.Write("Node Changed Event: <{0}> changed", args.Node.Name);
            if (args.Node.Value != null)
            {
                Console.WriteLine(" with value  {0}", args.Node.Value);
            }
            else
                Console.WriteLine("");
        }

        // Handle the NodeInserted event.
        private void MyNodeInsertedEvent(Object
 source, XmlNodeChangedEventArgs args)
        {
            Console.Write("Node Inserted Event: <{0}> inserted",
 args.Node.Name);
            if (args.Node.Value != null)
            {
                Console.WriteLine(" with value {0}", args.Node.Value);
            }
            else
                Console.WriteLine("");
        }

    } // End class 
#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
public ref class Sample
{
public:
   void Run( String^ args )
   {
      // Create and load the XML document.
      Console::WriteLine( "Loading file {0} ...", args );
      XmlDocument^ doc = gcnew XmlDocument;
      doc->Load( args );
      
      //Create the event handlers.
      doc->NodeChanged += gcnew XmlNodeChangedEventHandler( this,
 &Sample::MyNodeChangedEvent );
      doc->NodeInserted += gcnew XmlNodeChangedEventHandler( this,
 &Sample::MyNodeInsertedEvent );
      
      // Change the book price.
      doc->DocumentElement->LastChild->InnerText = "5.95";
      
      // Add a new element.
      XmlElement^ newElem = doc->CreateElement( "style" );
      newElem->InnerText = "hardcover";
      doc->DocumentElement->AppendChild( newElem );
      Console::WriteLine( "\r\nDisplay the modified XML..." );
      Console::WriteLine( doc->OuterXml );
   }

   // Handle the NodeChanged event.
private:
   void MyNodeChangedEvent( Object^ /*src*/, XmlNodeChangedEventArgs^
 args )
   {
      Console::Write( "Node Changed Event: <{0}> changed", args->Node->Name
 );
      if ( args->Node->Value != nullptr )
      {
         Console::WriteLine( " with value  {0}", args->Node->Value
 );
      }
      else
            Console::WriteLine( "" );
   }

   // Handle the NodeInserted event.
   void MyNodeInsertedEvent( Object^ /*src*/, XmlNodeChangedEventArgs^
 args )
   {
      Console::Write( "Node Inserted Event: <{0}> inserted", args->Node->Name
 );
      if ( args->Node->Value != nullptr )
      {
         Console::WriteLine( " with value {0}", args->Node->Value
 );
      }
      else
            Console::WriteLine( "" );
   }
};
// End class 

int main()
{
   Sample^ mySample = gcnew Sample;
   mySample->Run( "book.xml" );
}
import System.*;
import System.IO.*;
import System.Xml.*;

public class Sample
{
    private static String filename = "book.xml";

    public static void main(String[]
 args)
    {
        Sample mySample = new Sample();
        mySample.Run(filename);
    } //main

    public void Run(String args)
    {
        // Create and load the XML document.
        Console.WriteLine("Loading file {0} ...", args);
        XmlDocument doc = new XmlDocument();
        doc.Load(args);
        //Create the event handlers.
        doc.add_NodeChanged(new XmlNodeChangedEventHandler(this.
            MyNodeChangedEvent));
        doc.add_NodeInserted(new XmlNodeChangedEventHandler(this.
            MyNodeInsertedEvent));
        // Change the book price.
        doc.get_DocumentElement().get_LastChild().set_InnerText("5.95");
        // Add a new element.
        XmlElement newElem = doc.CreateElement("style");
        newElem.set_InnerText("hardcover");
        doc.get_DocumentElement().AppendChild(newElem);

        Console.WriteLine("\r\nDisplay the modified XML...");
        Console.WriteLine(doc.get_OuterXml());
    } //Run

    // Handle the NodeChanged event.
    public void MyNodeChangedEvent(Object src,
 XmlNodeChangedEventArgs args)
    {
        Console.Write("Node Changed Event: <{0}> changed", args.get_Node().
            get_Name());
        if (args.get_Node().get_Value() != null)
 {
            Console.WriteLine(" with value  {0}", args.get_Node().
                get_Value());
        }
        else {
            Console.WriteLine("");
        }
    } //MyNodeChangedEvent

    // Handle the NodeInserted event.
    public void MyNodeInsertedEvent(Object
 src, XmlNodeChangedEventArgs args)
    {
        Console.Write("Node Inserted Event: <{0}> inserted", args.get_Node().
            get_Name());
        if (args.get_Node().get_Value() != null)
 {
            Console.WriteLine(" with value {0}", args.get_Node().get_Value());
        }
        else {
            Console.WriteLine("");
        }
    } //MyNodeInsertedEvent 
} //Sample 

この例では、入力として、book.xml というファイル使用してます。

<!--sample XML fragment-->
<book genre='novel' ISBN='1-861003-78'
 misc='sale-item'>
  <title>The Handmaid's
 Tale</title>
  <price>14.95</price>
</book>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

XmlNodeChangedEventHandler デリゲートのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



XmlNodeChangedEventHandler デリゲートのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS