e79aa3c0ed
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
48 lines
1.9 KiB
C#
48 lines
1.9 KiB
C#
//------------------------------------------------------------------------------
|
|
// <copyright file="ConsumerConnectionPoint.cs" company="Microsoft">
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// </copyright>
|
|
//------------------------------------------------------------------------------
|
|
|
|
namespace System.Web.UI.WebControls.WebParts {
|
|
|
|
using System;
|
|
using System.Reflection;
|
|
using System.Web;
|
|
using System.Web.Util;
|
|
|
|
public class ConsumerConnectionPoint : ConnectionPoint {
|
|
// Used by WebPartManager to verify the custom ConnectionPoint type has
|
|
// the correct constructor signature.
|
|
internal static readonly Type[] ConstructorTypes;
|
|
|
|
static ConsumerConnectionPoint() {
|
|
ConstructorInfo constructor = typeof(ConsumerConnectionPoint).GetConstructors()[0];
|
|
ConstructorTypes = WebPartUtil.GetTypesForConstructor(constructor);
|
|
}
|
|
|
|
public ConsumerConnectionPoint(MethodInfo callbackMethod, Type interfaceType, Type controlType,
|
|
string displayName, string id, bool allowsMultipleConnections) : base(
|
|
callbackMethod, interfaceType, controlType, displayName, id, allowsMultipleConnections) {
|
|
}
|
|
|
|
public virtual void SetObject(Control control, object data) {
|
|
if (control == null) {
|
|
throw new ArgumentNullException("control");
|
|
}
|
|
|
|
CallbackMethod.Invoke(control, new object[] {data});
|
|
}
|
|
|
|
/// <devdoc>
|
|
/// Base implementation returns true, can be overridden by subclasses to return
|
|
/// true or false conditionally based on the available secondary interfaces and the state
|
|
/// of the consumer WebPart passed in.
|
|
/// </devdoc>
|
|
public virtual bool SupportsConnection(Control control, ConnectionInterfaceCollection secondaryInterfaces) {
|
|
return true;
|
|
}
|
|
}
|
|
}
|
|
|