Share via


ImplementedInterface Element (ProxyGen)

Represents an interface that another type implements. The type cannot be an array.

<ImplementedInterface>
  <ExternalTypeReference>...</ExternalTypeReference>
  <TypeReference>...</TypeReference>
</ImplementedInterface>

TypeReference_Type

Attributes and Elements

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

Attributes

None.

Child Elements

Element

Description

ExternalTypeReference

Optional ExternalTypeReference_Type element.

Describes an interface that is not defined in the proxy descriptor file. You must include either an ExternalTypeReference or TypeReference element, but not both.

TypeReference

Optional InternalTypeReference_Type element.

Describes an interface that is defined in the proxy descriptor file. You must include either a TypeReference or ExternalTypeReference element, but not both.

Parent Elements

Element

Description

Class Element for COMLibrary

Represents a proxy class for a COM class.

Class Element for ManagedLibrary

Represents a proxy class for a managed class.

Exception

Represents a proxy exception for a managed exception.

Interface Element for COMLibrary

Represents a proxy interface for a COM interface.

Interface Element for ManagedLibrary

Represents a proxy interface for a managed interface.

Struct

Represents a proxy struct for a managed struct.

Example

The following example demonstrates an ImplementedInterface element that is a child of a Class element. This ImplementedInterface element specifies that a proxy class named Microsoft.VisualStudio.Tools.Applications.Samples.ShapeApp.DrawingCollection implements the System.Collections.IEnumerable interface.

<Class originalFullyQualifiedName="Microsoft.VisualStudio.Tools.Applications.Samples.ShapeApp.DrawingCollection"
    isExcluded="false"
    isAddInEntryPoint="false">
  <ImplementedInterface>
    <ExternalTypeReference type="System.Collections.IEnumerable" />
  </ImplementedInterface>
...
  <Method originalName="GetEnumerator" isExcluded="false">
    <ReturnType>
      <ExternalTypeReference type="System.Collections.IEnumerator" />
    </ReturnType>
  </Method>
</Class>

Element Information

Namespace

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

Schema name

ProxyGen Descriptor

Validation file

ProxyGenDescriptorv2.xsd

Can be empty

No

See Also

Concepts

ProxyGen Descriptor Schema Reference

Creating Proxies

Defining Entry Points and Other Proxy Changes