Skip to main content
.NET Framework Class Library
TypeDescriptor..::.GetProperties Method (Object)

Returns the collection of properties for a specified component.

Namespace: System.ComponentModel
Assembly: System (in System.dll)
Syntax
Public Shared Function GetProperties ( _
	component As Object _
) As PropertyDescriptorCollection
public static PropertyDescriptorCollection GetProperties(
	Object component
)
public:
static PropertyDescriptorCollection^ GetProperties(
	Object^ component
)
static member GetProperties : 
        component:Object -> PropertyDescriptorCollection 

Parameters

component
Type: System..::.Object
A component to get the properties for.

Return Value

Type: System.ComponentModel..::.PropertyDescriptorCollection
A PropertyDescriptorCollection with the properties for the specified component.
Exceptions
ExceptionCondition
NotSupportedException

component is a cross-process remoted object.

Remarks

The properties for a component can differ from the properties of a class, because the site can add or remove properties if the component is sited.

If the component parameter is nullNothingnullptra null reference (Nothing in Visual Basic), an empty collection is returned.

The order of the returned collection is not guaranteed to be identical between calls, so always order it before use.

Examples

The following code example demonstrates the use of the GetProperties method to access the properties of a control. This code example is part of a larger example provided for the ComponentDesigner class.


' This is the shadowed property on the designer.
' This value will be serialized instead of the 
' value of the control's property.

Public Property BackColor() As Color
    Get
        Return CType(ShadowProperties("BackColor"), Color)
    End Get
    Set(ByVal value As Color)
        If (Me.changeService IsNot Nothing) Then
            Dim backColorDesc As PropertyDescriptor = TypeDescriptor.GetProperties(Me.Control)("BackColor")

            Me.changeService.OnComponentChanging(Me.Control, backColorDesc)

            Me.ShadowProperties("BackColor") = value

            Me.changeService.OnComponentChanged(Me.Control, backColorDesc, Nothing, Nothing)
        End If
    End Set
End Property


// This is the shadowed property on the designer.
// This value will be serialized instead of the 
// value of the control's property.
public Color BackColor
{
    get
    {
        return (Color)ShadowProperties["BackColor"];
    }
    set
    {
        if (this.changeService != null)
        {
            PropertyDescriptor backColorDesc =
                TypeDescriptor.GetProperties(this.Control)["BackColor"];

            this.changeService.OnComponentChanging(
                this.Control,
                backColorDesc);

            this.ShadowProperties["BackColor"] = value;

            this.changeService.OnComponentChanged(
                this.Control,
                backColorDesc,
                null,
                null);
        }
    }
}

Version Information

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.