XObject.Annotation XObject.Annotation XObject.Annotation XObject.Annotation Method

Definition

Overloads

Annotation(Type) Annotation(Type) Annotation(Type)

Gets the first annotation object of the specified type from this XObject.

Annotation<T>() Annotation<T>() Annotation<T>() Annotation<T>()

Gets the first annotation object of the specified type from this XObject.

Annotation(Type) Annotation(Type) Annotation(Type)

Gets the first annotation object of the specified type from this XObject.

public:
 System::Object ^ Annotation(Type ^ type);
public object Annotation (Type type);
member this.Annotation : Type -> obj

Parameters

type
Type Type Type Type

The type of the annotation to retrieve.

Returns

The Object that contains the first annotation object that matches the specified type, or null if no annotation is of the specified type.

Examples

The following example adds an annotation to an XElement. It then retrieves the annotation, specifying the type to retrieve.

public class MyAnnotation {  
    private string tag;  
    public string Tag {get{return tag;} set{tag=value;}}  
    public MyAnnotation(string tag) {  
        this.tag = tag;  
    }  
}  

public class Program {  
    public static void Main(string[] args) {     
        MyAnnotation ma = new MyAnnotation("T1");  
        XElement root = new XElement("Root", "content");  
        root.AddAnnotation(ma);  

        MyAnnotation ma2 = (MyAnnotation)root.Annotation(typeof(MyAnnotation));  
        Console.WriteLine(ma2.Tag);  
    }  
}  
Public Class MyAnnotation  
    Private _tag As String  

    Property Tag() As String  
        Get  
            Return Me._tag  
        End Get  
        Set(ByVal Value As String)  
            Me._tag = Value  
        End Set  
    End Property  

    Public Sub New(ByVal tag As String)  
        Me._tag = tag  
    End Sub  
End Class  

Module Module1  
    Sub Main()  
        Dim ma As MyAnnotation = New MyAnnotation("T1")  
        Dim root As XElement = <Root>content</Root>  
        root.AddAnnotation(ma)  

        Dim ma2 As MyAnnotation = DirectCast(root.Annotation(GetType(MyAnnotation)), MyAnnotation)  
        Console.WriteLine(ma2.Tag)  
    End Sub  

End Module  

This example produces the following output:

T1  
See also

Annotation<T>() Annotation<T>() Annotation<T>() Annotation<T>()

Gets the first annotation object of the specified type from this XObject.

public:
generic <typename T>
 where T : class T Annotation();
public T Annotation<T> () where T : class;
member this.Annotation : unit -> 'T (requires 'T : null)
Public Function Annotation(Of T As Class) () As T

Type Parameters

T

The type of the annotation to retrieve.

Returns

T T T T

The first annotation object that matches the specified type, or null if no annotation is of the specified type.

Examples

The following example adds an annotation to an element, and then retrieves it through this method.

public class MyAnnotation {  
    private string tag;  
    public string Tag {get{return tag;} set{tag=value;}}  
    public MyAnnotation(string tag) {  
        this.tag = tag;  
    }  
}  

public class Program {  
    public static void Main(string[] args) {     
        MyAnnotation ma = new MyAnnotation("T1");  
        XElement root = new XElement("Root", "content");  
        root.AddAnnotation(ma);  

        MyAnnotation ma2 = root.Annotation<MyAnnotation>();  
        Console.WriteLine(ma2.Tag);  
    }  
}  
Public Class MyAnnotation  
    Private _tag As String  

    Property Tag() As String  
        Get  
            Return Me._tag  
        End Get  
        Set(ByVal Value As String)  
            Me._tag = Value  
        End Set  
    End Property  

    Public Sub New(ByVal tag As String)  
        Me._tag = tag  
    End Sub  
End Class  

Module Module1  
    Sub Main()  
        Dim ma As MyAnnotation = New MyAnnotation("T1")  
        Dim root As XElement = <Root>content</Root>  
        root.AddAnnotation(ma)  

        Dim ma2 As MyAnnotation = root.Annotation(Of MyAnnotation)()  
        Console.WriteLine(ma2.Tag)  
    End Sub  
End Module  

This example produces the following output:

T1  
See also

Applies to