Class Element for ManagedLibrary (ProxyGen)

Represents a proxy class for a managed class in the host application's object model.

<Class isAddInEntryPoint = "true/false"
    isExcluded = "true/false"
    isStatic = "true/false"
    newName = "Name of proxy class"
    newNamespace = "Namespace of proxy class"
    originalFullyQualifiedName = "Fully qualified name of original managed class">
  <Attribute>...</Attribute>
  <BaseType>...</BaseType>
  <Class>...</Class>
  <Constant>...</Constant>
  <Delegate>...</Delegate>
  <Enum>...</Enum>
  <Exception>...</Exception>
  <Event>...</Event>
  <ImplementedInterface>...</ImplementedInterface>
  <Interface>...</Interface>
  <Method>...</Method>
  <Property>...</Property>
  <Struct>...</Struct>
</Class>

ManagedEntryPoint_Type

Attributes and Elements

The following sections describe attributes, child elements, and parent elements.

Attributes

Attribute

Description

isAddInEntryPoint

Optional xs:boolean attribute.

true if the class is an entry point in the proxy assembly; otherwise, false. The default is false.

For more information about entry points, see Defining Entry Points and Other Proxy Changes.

isExcluded

Optional xs:boolean attribute.

true to omit the class from the proxy code; false to include the class in the proxy code. The default is false.

isStatic

Optional xs:boolean attribute.

true to declare the class using the static keyword; otherwise, false. The default is false.

newName

Optional identifier_Type attribute.

The name of the proxy class.

newNamespace

Optional name_Type attribute.

The namespace of the proxy class.

originalFullyQualifiedName

Required xs:ID attribute.

The fully qualified name of the original class in the host application's object model.

Child Elements

Element

Description

Attribute

Optional Attribute_Type element.

Represents an attribute that is applied to the class.

BaseType

Optional TypeReference_Type element.

Describes the base type of the class.

Class

Optional ManagedEntryPoint_Type element.

Represents a nested class that is defined in the class.

Constant

Optional Constant_Type element.

Represents a constant that is defined in the class.

Delegate

Optional Delegate_Type element.

Represents a delegate that is defined in the class.

Enum

Optional Enum_Type element.

Represents an enumeration that is defined in the class.

Exception

Optional Exception_Type element.

Represents an exception that is defined in the class.

Event

Optional ManagedEvent_Type element.

Represents an event that is defined in the class.

ImplementedInterface

Optional TypeReference_Type element.

Represents an interface that the class implements.

Interface

Optional ManagedEntryPoint_Type element.

Represents a nested interface that is defined in the class.

Method

Optional ManagedMethod_Type element.

Represents a method that is defined in the class.

Property

Optional ManagedProperty_Type element.

Represents a property that is defined in the class.

Struct

Optional ManagedType_Type element.

Represents a nested struct that is defined in the class.

Parent Elements

Element

Description

ManagedLibrary

Describes the contents of the managed assembly that was passed to ProxyGen.exe.

Class

Represents the parent class in which the class is defined.

Struct

Represents the parent struct in which the class is defined.

Example

The following example demonstrates a Class element that represents a class named Microsoft.VisualStudio.Tools.Applications.Samples.ShapeApp.Application. This class includes a method named CreateColor, a property named ActiveDrawing, and an event named DocumentOpened.

<Class originalFullyQualifiedName="Microsoft.VisualStudio.Tools.Applications.Samples.ShapeApp.Application"
    isExcluded="false"
    isAddInEntryPoint="true">
  <ImplementedInterface>
    <ExternalTypeReference type="System.Windows.Forms.IWin32Window" />
  </ImplementedInterface>
  <Method originalName="CreateColor" isExcluded="false" isStatic="true">
    <Parameter originalName="alphaRedGreenBlue">
      <Type>
        <ExternalTypeReference isInterface="false" type="System.Int32" />
      </Type>
    </Parameter>
    <ReturnType>
      <TypeReference type="Microsoft.VisualStudio.Tools.Applications.Samples.ShapeApp.Color" />
    </ReturnType>
  </Method>
  <Property originalName="ActiveDrawing" isExcluded="false">
    <Type>
      <TypeReference type="Microsoft.VisualStudio.Tools.Applications.Samples.ShapeApp.Drawing" />
    </Type>
    <Get isExcluded="false" />
  </Property>
  <Event originalName="DocumentOpened" isExcluded="false">
    <Type>
      <ExternalTypeReference isInterface="false" type="System.EventHandler" />
    </Type>
  </Event>
</Class>

Element Information

Namespace

https://schemas.microsoft.com/vsta/2008/01/ProxyGenDescriptor

Schema name

ProxyGen Descriptor

Validation file

ProxyGenDescriptorv2.xsd

Can be empty

Yes

See Also

Concepts

ProxyGen Descriptor Schema Reference

Creating Proxies

Defining Entry Points and Other Proxy Changes