WebPart.RegisterInterface - Méthode (String, String, Int32, ConnectionRunAt, Object, String, String, String)
Remarque : cette API est désormais obsolète.
Enregistre une interface à partir de l'espace de noms Microsoft.SharePoint.WebPartPages.Communication pour un composant WebPart connectable.
Espace de noms : Microsoft.SharePoint.WebPartPages
Assembly : Microsoft.SharePoint (dans Microsoft.SharePoint.dll)
Syntaxe
'Déclaration
<ObsoleteAttribute("Use ConnectionProvider or ConnectionConsumer attribute to create ConnectionPoint instead.")> _
Protected Sub RegisterInterface ( _
interfaceName As String, _
interfaceType As String, _
maxConnections As Integer, _
runAtOptions As ConnectionRunAt, _
interfaceObject As Object, _
interfaceClientReference As String, _
menuLabel As String, _
description As String _
)
'Utilisation
Dim interfaceName As String
Dim interfaceType As String
Dim maxConnections As Integer
Dim runAtOptions As ConnectionRunAt
Dim interfaceObject As Object
Dim interfaceClientReference As String
Dim menuLabel As String
Dim description As String
Me.RegisterInterface(interfaceName, _
interfaceType, maxConnections, runAtOptions, _
interfaceObject, interfaceClientReference, _
menuLabel, description)
[ObsoleteAttribute("Use ConnectionProvider or ConnectionConsumer attribute to create ConnectionPoint instead.")]
protected void RegisterInterface(
string interfaceName,
string interfaceType,
int maxConnections,
ConnectionRunAt runAtOptions,
Object interfaceObject,
string interfaceClientReference,
string menuLabel,
string description
)
Paramètres
interfaceName
Type : System.StringLe nom convivial de l'interface.
interfaceType
Type : System.StringLe type de l'interface, comme indiqué dans les champs de la classe InterfaceTypes .
maxConnections
Type : System.Int32La limite spécifiée sur le nombre de connexions à cette interface. Peut être LimitOneConnection ou UnlimitedConnections.
runAtOptions
Type : Microsoft.SharePoint.WebPartPages.Communication.ConnectionRunAtUn ConnectionRunAt valeurqui indique où l'interface peut être exécuté.
interfaceObject
Type : System.ObjectUne référence à l'interface implémentée.
interfaceClientReference
Type : System.StringLa string permet de faire référence à l'interface de script pour les connexions côté client, par exemple RowProviderInterface_WPQ_.
menuLabel
Type : System.StringL'étiquette qui sera utilisé dans l'interface utilisateur pour la création d'une connexion de composant WebPart avec cette interface.
description
Type : System.StringUne brève description de l'interface qui sera utilisé dans l'interface utilisateur pour la création d'une connexion de composant WebPart avec cette interface.
Remarques
Lors du développement d'un composant WebPart connectable, vous devez appeler cette méthode une fois pour chaque interface dans la méthode EnsureInterfaces pour le composant WebPart.
Cette méthode est une des deux méthodes surchargées RegisterInterface . Il n'inclut pas le paramètre allowCrossPageConnection dans sa signature de la fonction, qui vous permet de spécifier si une interface de connexion est exposée dans l'interface utilisateur de création des environnements pour la création d'une connexion entre les deux pages de composants WebPart. Dans cette version de la méthode, le paramètre allowCrossPageConnection par défaut est true pour toutes les interfaces de connexion qui sont pris en charge par les règles de compatibilité de connexion définis par l'infrastructure de composant WebPart et false pour toutes les autres interfaces de connexion.
Pour spécifier le paramètre allowCrossPageConnection , utilisez la méthode [RegisterInterface(String,String,Int32,Microsoft.SharePoint.WebPartPages.Communication.ConnectionRunAt,object,String,String,String,Boolean)] à la place.
Exemples
L'exemple de code suivant illustre une méthode substituée EnsureInterfaces qui appelle la méthode RegisterInterface . Cet exemple de code fait partie d'un exemple plus complet fourni pour l'interface ICellProvider .
For an overview of the steps for creating a connectable Web Part, see Walkthrough: Creating a Connectable SharePoint Web Part.
' Step #4: Override the EnsureInterfaces() method and call the RegisterInterface method.
Public Overrides Sub EnsureInterfaces()
' If your Web Part is installed in the bin directory and the Code Access Security (CAS) setting doesn't
' allow Web Part Connections, an exception will be thrown. To allow your Web Part to behave
' well and continue working, a try/catch block should be used when attempting to register interfaces.
' Web Part Connections will only work if the level attribute of the <trust> tag in the
' web.config file is set to WSS_Minimal, WSS_Medium, or Full. By default a new SharePoint site
' is installed with the trust level set to WSS_Minimal.
Try
' Register the ICellProvider Interface
' <param name="interfaceName">Friendly name of the interface that is being implemented.
' It must be unique on the client so the _WPQ_ token is used.</param>
' <param name="interfaceType">Specifies which interface is being implemented.</param>
' <param name="maxConnections">Defines how many times this interface can be connected.</param>
' <param name="runAtOptions">Determines where the interface can run.</param>
' <param name="interfaceObject">Reference to the object that is implementing this interface.</param>
' <param name="interfaceClientReference">Name used to reference the interface on the client.
' It must be unique on the client so the _WPQ_ token is used.</param>
' <param name="menuLabel">Label for the interface which appears in the UI</param>
' <param name="description">Description of the interface which appears in the UI</param>
' <param name="allowCrossPageConnection">Specifies if the interface can connect to a Web Part
' on a different page. This is an optional parameter with a default of false. Note that only some
' server-side interfaces are allowed to connect across pages by the Web Part Infrastructure.
' The ICellProvider interface is not allowed to connect across pages.</param>
RegisterInterface("MyCellProviderInterface_WPQ_", InterfaceTypes.ICellProvider, WebPart.UnlimitedConnections, ConnectionRunAt.Server, Me, "CellProviderInterface_WPQ_", "Provide Cell To", "Provides a single value to a cell consumer Web Part.")
Catch se As SecurityException
_registrationErrorOccurred = True
End Try
End Sub
// Step #4: Override the EnsureInterfaces() method and call the RegisterInterface method.
public override void EnsureInterfaces()
{
// If your Web Part is installed in the bin directory and the Code Access Security (CAS) setting doesn't
// allow Web Part Connections, an exception will be thrown. To allow your Web Part to behave
// well and continue working, a try/catch block should be used when attempting to register interfaces.
// Web Part Connections will only work if the level attribute of the <trust> tag in the
// web.config file is set to WSS_Minimal, WSS_Medium, or Full. By default a new SharePoint site
// is installed with the trust level set to WSS_Minimal.
try
{
// Register the ICellProvider Interface
// <param name="interfaceName">Friendly name of the interface that is being implemented.
// It must be unique on the client so the _WPQ_ token is used.</param>
// <param name="interfaceType">Specifies which interface is being implemented.</param>
// <param name="maxConnections">Defines how many times this interface can be connected.</param>
// <param name="runAtOptions">Determines where the interface can run.</param>
// <param name="interfaceObject">Reference to the object that is implementing this interface.</param>
// <param name="interfaceClientReference">Name used to reference the interface on the client.
// It must be unique on the client so the _WPQ_ token is used.</param>
// <param name="menuLabel">Label for the interface which appears in the UI</param>
// <param name="description">Description of the interface which appears in the UI</param>
// <param name="allowCrossPageConnection">Specifies if the interface can connect to a Web Part
// on a different page. This is an optional parameter with a default of false. Note that only some
// server-side interfaces are allowed to connect across pages by the Web Part infrastructure.
// The ICellProvider interface is not allowed to connect across pages.</param>
RegisterInterface("MyCellProviderInterface_WPQ_", //InterfaceName
InterfaceTypes.ICellProvider, //InterfaceType
WebPart.UnlimitedConnections, //MaxConnections
ConnectionRunAt.Server, //RunAtOptions
this, //InterfaceObject
"CellProviderInterface_WPQ_", //InterfaceClientReference
"Provide Cell To", //MenuLabel
"Provides a single value to a cell consumer Web Part."); //Description
}
catch(SecurityException se)
{
_registrationErrorOccurred = true;
}
}