ProvidePropertyAttribute Class
Assembly: System (in system.dll)
'Declaration <AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple:=True)> _ Public NotInheritable Class ProvidePropertyAttribute Inherits Attribute 'Usage Dim instance As ProvidePropertyAttribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true) */ public final class ProvidePropertyAttribute extends Attribute
AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true) public final class ProvidePropertyAttribute extends Attribute
Not applicable.
When you mark a class with this attribute, you tell the code generator to create an extender property with the name you provide. The marked class must implement IExtenderProvider. As a result, the new property can be used by other components in a container.
Within the marked class, you must implement Get <name> and Set <name> methods. For example, if you mark a class with [ProvideProperty("PropertyName")], you must implement GetPropertyName and SetPropertyName methods. To specify that the new property will be an extender property, you must implement from IExtenderProvider, you must also implement a CanExtend method.
For more information, see Attributes Overview and Extending Metadata Using Attributes.
The following example marks MyClass with a ProvidePropertyAttribute that tells the compiler to create a property called MyProperty from the GetMyProperty and SetMyProperty methods.
<ProvideProperty("MyProperty", GetType(Control))> _ Public Class SampleClass Implements IExtenderProvider Protected ciMine As CultureInfo = Nothing ' Provides the Get portion of MyProperty. Public Function GetMyProperty(myControl As Control) As CultureInfo ' Insert code here. Return ciMine End Function 'GetMyProperty ' Provides the Set portion of MyProperty. Public Sub SetMyProperty(myControl As Control, value As String) ' Insert code here. End Sub 'SetMyProperty ' When you inherit from IExtenderProvider, you must implement the ' CanExtend method. Public Function CanExtend(target As [Object]) As Boolean Implements IExtenderProvider.CanExtend Return TypeOf target Is Control End Function 'CanExtend ' Insert additional code here. End Class
public class MyClass implements IExtenderProvider
{
protected CultureInfo ciMine = null;
// Provides the Get portion of MyProperty.
public CultureInfo GetMyProperty(Control myControl)
{
// Insert code here.
return ciMine;
} //GetMyProperty
// Provides the Set portion of MyProperty.
public void SetMyProperty(Control myControl, String value)
{
// Insert code here.
} //SetMyProperty
/* When you inherit from IExtenderProvider, you must implement the
* CanExtend method.
*/
public boolean CanExtend(Object target)
{
return target instanceof Control;
} //CanExtend
// Insert additional code here.
} //MyClass
Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.