Freigeben über


DefaultPropertyAttribute-Klasse

Gibt die Standardeigenschaft für eine Komponente an.

Namespace: System.ComponentModel
Assembly: System (in system.dll)

Syntax

'Declaration
<AttributeUsageAttribute(AttributeTargets.Class)> _
Public NotInheritable Class DefaultPropertyAttribute
    Inherits Attribute
'Usage
Dim instance As DefaultPropertyAttribute
[AttributeUsageAttribute(AttributeTargets.Class)] 
public sealed class DefaultPropertyAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Class)] 
public ref class DefaultPropertyAttribute sealed : public Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Class) */ 
public final class DefaultPropertyAttribute extends Attribute
AttributeUsageAttribute(AttributeTargets.Class) 
public final class DefaultPropertyAttribute extends Attribute

Hinweise

Verwenden Sie die Name-Eigenschaft, um den Namen der Standardeigenschaft abzurufen.

Weitere Informationen finden Sie unter Übersicht über Attribute und Erweitern von Metadaten mithilfe von Attributen.

Thema Position
Exemplarische Vorgehensweise: Entwickeln und Verwenden eines benutzerdefinierten Serversteuerelements Entwickeln von ASP.NET-Steuerelementen
Entwickeln von benutzerdefinierten datengebundenen Webserversteuerelementen für ASP.NET 1.1 Entwickeln von ASP.NET-Steuerelementen
Entwickeln von benutzerdefinierten datengebundenen Webserversteuerelementen für ASP.NET 2.0 Entwickeln von ASP.NET-Steuerelementen
Exemplarische Vorgehensweise: Erstellen eines benutzerdefinierten datengebundenen ASP.NET-Websteuerelements für ASP.NET 2.0 Entwickeln von ASP.NET-Steuerelementen
Exemplarische Vorgehensweise: Erstellen eines benutzerdefinierten datengebundenen ASP.NET-Websteuerelements für ASP.NET 1.1 Entwickeln von ASP.NET-Steuerelementen
Exemplarische Vorgehensweise: Entwickeln und Verwenden eines benutzerdefinierten Serversteuerelements Erstellen von Anwendungen mit Visual Web Developer
Entwickeln von benutzerdefinierten datengebundenen Webserversteuerelementen für ASP.NET 1.1 Erstellen von ASP.NET-Webanwendungen in Visual Studio
Exemplarische Vorgehensweise: Erstellen eines benutzerdefinierten datengebundenen ASP.NET-Websteuerelements für ASP.NET 1.1 Erstellen von ASP.NET-Webanwendungen in Visual Studio
Entwickeln von benutzerdefinierten datengebundenen Webserversteuerelementen für ASP.NET 2.0 Erstellen von ASP.NET-Webanwendungen in Visual Studio
Exemplarische Vorgehensweise: Erstellen eines benutzerdefinierten datengebundenen ASP.NET-Websteuerelements für ASP.NET 2.0 Erstellen von ASP.NET-Webanwendungen in Visual Studio
Entwickeln von benutzerdefinierten datengebundenen Webserversteuerelementen für ASP.NET 1.1 Erstellen von ASP.NET-Webanwendungen in Visual Studio
Entwickeln von benutzerdefinierten datengebundenen Webserversteuerelementen für ASP.NET 2.0 Erstellen von ASP.NET-Webanwendungen in Visual Studio
Exemplarische Vorgehensweise: Erstellen eines benutzerdefinierten datengebundenen ASP.NET-Websteuerelements für ASP.NET 2.0 Erstellen von ASP.NET-Webanwendungen in Visual Studio
Exemplarische Vorgehensweise: Erstellen eines benutzerdefinierten datengebundenen ASP.NET-Websteuerelements für ASP.NET 1.1 Erstellen von ASP.NET-Webanwendungen in Visual Studio

Beispiel

Im folgenden Beispiel wird das Steuerelement MyControl definiert. Die Klasse wird mit DefaultPropertyAttribute markiert und MyProperty so als Standardeigenschaft festgelegt.

<DefaultProperty("MyProperty")> _
Public Class MyControl
    Inherits Control

    Public Property MyProperty() As Integer
        Get
            ' Insert code here.
            Return 0
        End Get
        Set
            ' Insert code here.
        End Set 
    End Property
    ' Insert any additional code.
End Class 'MyControl
[DefaultProperty("MyProperty")]
 public class MyControl : Control {
 
    public int MyProperty {
       get {
          // Insert code here.
          return 0;
       }
       set {
          // Insert code here.
       }
    }
 
    // Insert any additional code.
 
 }
[DefaultProperty("MyProperty")]
ref class MyControl: public Control
{
public:

   property int MyProperty 
   {
      int get()
      {
         // Insert code here.
         return 0;
      }

      void set( int value )
      {
         // Insert code here.
      }
   }
   // Insert any additional code.
};
/** @attribute DefaultProperty("MyProperty")
 */
public static class MyControl extends Control
{
    /** @property 
     */
    public int get_MyProperty()
    {
        // Insert code here.
        return 0;
    } //get_MyProperty

    /** @property 
     */
    public void set_MyProperty(int value)
    {
        // Insert code here.
    } //set_MyProperty

    // Insert any additional code.

} //MyControl

Im folgenden Beispiel wird eine Instanz von MyControl erstellt. Anschließend werden die Attribute für die Klasse abgerufen, DefaultPropertyAttribute extrahiert und der Name der Standardeigenschaft ausgegeben.

Public Shared Function Main() As Integer
    ' Creates a new control.
    Dim myNewControl As New MyControl()
    
    ' Gets the attributes for the collection.
    Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(myNewControl)
    
    ' Prints the name of the default property by retrieving the
    ' DefaultPropertyAttribute from the AttributeCollection. 
    Dim myAttribute As DefaultPropertyAttribute = _
        CType(attributes(GetType(DefaultPropertyAttribute)), DefaultPropertyAttribute)
    Console.WriteLine(("The default property is: " + myAttribute.Name))
    Return 0
End Function 'Main
public static int Main() {
    // Creates a new control.
    MyControl myNewControl = new MyControl();
 
    // Gets the attributes for the collection.
    AttributeCollection attributes = TypeDescriptor.GetAttributes(myNewControl);
 
    /* Prints the name of the default property by retrieving the 
     * DefaultPropertyAttribute from the AttributeCollection. */
    DefaultPropertyAttribute myAttribute = 
       (DefaultPropertyAttribute)attributes[typeof(DefaultPropertyAttribute)];
    Console.WriteLine("The default property is: " + myAttribute.Name);
  
    return 0;
 }
int main()
{
   // Creates a new control.
   Form1::MyControl^ myNewControl = gcnew Form1::MyControl;

   // Gets the attributes for the collection.
   AttributeCollection^ attributes = TypeDescriptor::GetAttributes( myNewControl );

   /* Prints the name of the default property by retrieving the 
       * DefaultPropertyAttribute from the AttributeCollection. */
   DefaultPropertyAttribute^ myAttribute = dynamic_cast<DefaultPropertyAttribute^>(attributes[ DefaultPropertyAttribute::typeid ]);
   Console::WriteLine( "The default property is: {0}", myAttribute->Name );
   return 0;
}
public static void main(String[] args)
{
    // Creates a new control.        
    MyControl myNewControl = new MyControl();

    // Gets the attributes for the collection.
    AttributeCollection attributes = 
        TypeDescriptor.GetAttributes(myNewControl);

    /* Prints the name of the default property by retrieving the 
       DefaultPropertyAttribute from the AttributeCollection. 
     */
    DefaultPropertyAttribute myAttribute = 
        (DefaultPropertyAttribute)(attributes.get_Item(
        DefaultPropertyAttribute.class.ToType()));

    Console.WriteLine("The default property is: " 
        + myAttribute.get_Name());
    
} //main

Vererbungshierarchie

System.Object
   System.Attribute
    System.ComponentModel.DefaultPropertyAttribute

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Plattformen

Windows 98, Windows 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

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

DefaultPropertyAttribute-Member
System.ComponentModel-Namespace
Attribute