XmlNodeEventHandler 대리자
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
의 이벤트를 처리하는 메서드를 UnknownNodeXmlSerializer나타냅니다.
public delegate void XmlNodeEventHandler(System::Object ^ sender, XmlNodeEventArgs ^ e);
public delegate void XmlNodeEventHandler(object sender, XmlNodeEventArgs e);
type XmlNodeEventHandler = delegate of obj * XmlNodeEventArgs -> unit
Public Delegate Sub XmlNodeEventHandler(sender As Object, e As XmlNodeEventArgs)
매개 변수
- sender
- Object
이벤트의 출처입니다.
XmlNodeEventArgs 이벤트 데이터가 들어 있는 항목입니다.
예제
다음 예제에서는 이벤트에 XmlSerializer대한 UnknownNode 이벤트 처리기를 추가하고 개체를 역직렬화합니다.
private void DeserializeItem(string filename) {
XmlSerializer mySerializer =
new XmlSerializer(typeof(ObjectToDeserialize));
// Add an instance of the delegate to the event.
mySerializer.UnknownNode += new XmlNodeEventHandler
(Serializer_UnknownNode);
// A FileStream is needed to read the file to deserialize.
FileStream fs = new FileStream(filename, FileMode.Open);
ObjectToDeserialize o = (ObjectToDeserialize)mySerializer.Deserialize(fs);
}
private void Serializer_UnknownNode
(object sender, XmlNodeEventArgs e) {
Console.WriteLine("UnknownNode Name: "
+ e.Name);
Console.WriteLine("UnknownNode LocalName: "
+ e.LocalName);
Console.WriteLine("UnknownNode Namespace URI: "
+ e.NamespaceURI);
Console.WriteLine("UnknownNode Text: "
+ e.Text);
object o = e.ObjectBeingDeserialized;
Console.WriteLine("Object being deserialized "
+ o.ToString());
XmlNodeType myNodeType = e.NodeType;
Console.WriteLine(myNodeType);
}
Private Sub DeserializeItem(ByVal filename As String)
Dim mySerializer As New XmlSerializer(GetType(ObjectToDeserialize))
' Add an instance of the delegate to the event.
AddHandler mySerializer.UnknownNode, AddressOf Serializer_UnknownNode
' A FileStream is needed to read the file to deserialize.
Dim fs As New FileStream(filename, FileMode.Open)
Dim o As ObjectToDeserialize = _
CType(mySerializer.Deserialize(fs), ObjectToDeserialize)
End Sub
Private Sub Serializer_UnknownNode _
(ByVal sender As Object, _
ByVal e As XmlNodeEventArgs)
Console.WriteLine("UnknownNode Name: " & e.Name)
Console.WriteLine("UnknownNode LocalName: " & e.LocalName)
Console.WriteLine("UnknownNode Namespace URI: " & e.NamespaceURI)
Console.WriteLine("UnknownNode Text: " & e.Text)
Dim o As Object = e.ObjectBeingDeserialized
Console.WriteLine("Object being deserialized " & o.ToString())
Dim myNodeType As XmlNodeType = e.NodeType
Console.WriteLine(myNodeType)
End Sub
설명
대리자를 XmlNodeEventHandler 만들 때 이벤트를 처리하는 메서드를 식별합니다. 이벤트를 이벤트 처리기와 연결하려면 대리자의 인스턴스를 이벤트에 추가합니다. 대리자를 제거하지 않는 한 이벤트가 발생할 때마다 이벤트 처리기가 호출됩니다. 이벤트 처리기 대리자에 대한 자세한 내용은 이벤트 처리 및 발생을 참조하세요.
이 UnknownNode 이벤트는 메서드를 호출할 때만 발생합니다 Deserialize .
확장명 메서드
| Name | Description |
|---|---|
| GetMethodInfo(Delegate) |
지정된 대리자가 나타내는 메서드를 나타내는 개체를 가져옵니다. |