Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mcs / class / corlib / Documentation / en / System.Runtime.InteropServices.WindowsRuntime / DefaultInterfaceAttribute.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <Type Name="DefaultInterfaceAttribute" FullName="System.Runtime.InteropServices.WindowsRuntime.DefaultInterfaceAttribute">
3   <TypeSignature Language="C#" Value="public sealed class DefaultInterfaceAttribute : Attribute" />
4   <TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit DefaultInterfaceAttribute extends System.Attribute" />
5   <AssemblyInfo>
6     <AssemblyName>mscorlib</AssemblyName>
7     <AssemblyVersion>4.0.0.0</AssemblyVersion>
8   </AssemblyInfo>
9   <Base>
10     <BaseTypeName>System.Attribute</BaseTypeName>
11   </Base>
12   <Interfaces />
13   <Attributes>
14     <Attribute>
15       <AttributeName>System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface | System.AttributeTargets.All, AllowMultiple=false, Inherited=false)</AttributeName>
16     </Attribute>
17   </Attributes>
18   <Docs>
19     <remarks>
20       <attribution license="cc4" from="Microsoft" modified="false" />
21       <para>When you develop wrt Components, use this attribute when you want to specify the default interface that is used to marshal the class the attribute is applied to. This is not necessary if you allow the class interfaces to be generated automatically. </para>
22       <para>A wrt class must have a default interface. If the WinMdExp.exe utility does not detect a default interface for a class when it builds your wrt component, it chooses an interface as follows: </para>
23       <list type="bullet">
24         <item>
25           <para>If the class has automatically generated interfaces, it uses the first one as the default. </para>
26         </item>
27         <item>
28           <para>If the class doesn't have any automatically generated interfaces, it uses the first interface in the class's interface implementation list. </para>
29         </item>
30       </list>
31       <para>You can apply the <see cref="T:System.Runtime.InteropServices.WindowsRuntime.DefaultInterfaceAttribute" /> attribute to the class, or apply the Windows.Foundations.Metadata.DefaultAttribute attribute to an interface. The latter takes precedence if both attributes are supplied. </para>
32     </remarks>
33     <summary>
34       <attribution license="cc4" from="Microsoft" modified="false" />
35       <para>Specifies the default interface of a managed wrt class.</para>
36     </summary>
37   </Docs>
38   <Members>
39     <Member MemberName=".ctor">
40       <MemberSignature Language="C#" Value="public DefaultInterfaceAttribute (Type defaultInterface);" />
41       <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Type defaultInterface) cil managed" />
42       <MemberType>Constructor</MemberType>
43       <AssemblyInfo>
44         <AssemblyVersion>4.0.0.0</AssemblyVersion>
45       </AssemblyInfo>
46       <Parameters>
47         <Parameter Name="defaultInterface" Type="System.Type" />
48       </Parameters>
49       <Docs>
50         <remarks>To be added.</remarks>
51         <summary>
52           <attribution license="cc4" from="Microsoft" modified="false" />
53           <para>Initializes a new instance of the <see cref="T:System.Runtime.InteropServices.WindowsRuntime.DefaultInterfaceAttribute" /> class. </para>
54         </summary>
55         <param name="defaultInterface">
56           <attribution license="cc4" from="Microsoft" modified="false" />The interface type that is specified as the default interface for the class the attribute is applied to. </param>
57       </Docs>
58     </Member>
59     <Member MemberName="DefaultInterface">
60       <MemberSignature Language="C#" Value="public Type DefaultInterface { get; }" />
61       <MemberSignature Language="ILAsm" Value=".property instance class System.Type DefaultInterface" />
62       <MemberType>Property</MemberType>
63       <AssemblyInfo>
64         <AssemblyVersion>4.0.0.0</AssemblyVersion>
65       </AssemblyInfo>
66       <ReturnValue>
67         <ReturnType>System.Type</ReturnType>
68       </ReturnValue>
69       <Docs>
70         <value>To be added.</value>
71         <remarks>To be added.</remarks>
72         <summary>
73           <attribution license="cc4" from="Microsoft" modified="false" />
74           <para>Gets the type of the default interface. </para>
75         </summary>
76       </Docs>
77     </Member>
78   </Members>
79 </Type>