ContentPropertyAttribute Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Geeft aan welke eigenschap van een type de eigenschap XAML-inhoud is. Een XAML-processor gebruikt deze informatie bij het verwerken van onderliggende XAML-elementen van XAML-representaties van het toegewezen type.
public ref class ContentPropertyAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=true)]
public sealed class ContentPropertyAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=true)>]
type ContentPropertyAttribute = class
inherit Attribute
Public NotInheritable Class ContentPropertyAttribute
Inherits Attribute
- Overname
- Kenmerken
Voorbeelden
In het volgende voorbeeld wordt een klasse gemaakt die Film een ContentPropertyAttribute toegepaste klasse heeft. De benoemde Title eigenschap wordt aangegeven als de inhoudseigenschap.
[ContentProperty("Title")]
public class Film
{
public Film()
{
}
public string Title
{
get { return _title; }
set { _title = value; }
}
private string _title;
}
<ContentProperty("Title")>
Public Class Film
Public Sub New()
End Sub
Public Property Title() As String
Get
Return _title
End Get
Set(ByVal value As String)
_title = value
End Set
End Property
Private _title As String
End Class
Opmerkingen
Als de bijbehorende eigenschap van een ContentPropertyAttribute niet van het type string is of object, probeert een XAML-processor een methode voor waardeconversie te identificeren. De eerste controle is voor systeemeigen typeconversie, ofwel van de XAML-taalprimitieven of van specifieke systeemeigen conversies die zijn ingeschakeld door die specifieke XAML writer-implementatie. De volgende stap is het zoeken naar een typeconversieprogramma. In de .NET implementaties wordt een typeconversieprogramma geïdentificeerd op basis van TypeConverterAttribute op het niveau van het lid of typeniveau dat van toepassing is. Als er geen waardeconversie kan worden geïdentificeerd, genereert een XAML-objectschrijver doorgaans een uitzondering.
Als u meer dan één objectelement als inhoud wilt accepteren, moet het type XAML-inhoudseigenschap worden ondersteund als een verzamelingstype.
Vanwege de Inherited=true declaratie van het kenmerk wordt ook een waarde voor een ContentPropertyAttribute inhoudseigenschap toegepast op alle afgeleide klassen. Als u een lege ContentPropertyAttribute toepassing toepast, kan een afgeleide klasse een declaratie van een inhoudseigenschapskenmerk door een basisklasse verwijderen (en om te weten dat de klasse geen inhoudseigenschap heeft). Als u een andere naam ContentPropertyAttribute toepast, wordt de overgenomen ContentPropertyAttribute door de nieuwe vervangen.
In eerdere versies van het .NET Framework bestond deze klasse in de WPF-specifieke assembly WindowsBase en had deze ook een parallelle implementatie in Windows Communication Foundation (WCF). Vanaf het .NET Framework 4.0 bevindt ContentPropertyAttribute zich in de System.Xaml-assembly. Zie Types gemigreerd van WPF naar System.Xaml voor meer informatie.
Opmerkingen bij WPF-gebruik
Een voorbeeld van een klasse in Windows Presentation Foundation (WPF) die gebruikmaakt van de ContentPropertyAttribute is ContentControl, waarvan de klasse Button overgaat. De ContentControl.Content eigenschap is de inhoudseigenschap die is ingesteld door de ContentPropertyAttribute. Als een Button instantie wordt geïnstantieerd in XAML, wordt de Content waarde Button ingesteld op het element tussen de tags voor de start- en eindknop.
Constructors
| Name | Description |
|---|---|
| ContentPropertyAttribute() |
Initialiseert een nieuw exemplaar van de ContentPropertyAttribute klasse. |
| ContentPropertyAttribute(String) |
Initialiseert een nieuw exemplaar van de ContentPropertyAttribute klasse met behulp van de opgegeven naam. |
Eigenschappen
| Name | Description |
|---|---|
| Name |
Hiermee haalt u de naam op van de eigenschap die de inhoudseigenschap is. |
| TypeId |
Wanneer deze wordt geïmplementeerd in een afgeleide klasse, krijgt u Attributehiervoor een unieke id. (Overgenomen van Attribute) |
Methoden
| Name | Description |
|---|---|
| Equals(Object) |
Retourneert een waarde die aangeeft of dit exemplaar gelijk is aan een opgegeven object. (Overgenomen van Attribute) |
| GetHashCode() |
Retourneert de hash-code voor dit exemplaar. (Overgenomen van Attribute) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| IsDefaultAttribute() |
Wanneer deze wordt overschreven in een afgeleide klasse, geeft u aan of de waarde van dit exemplaar de standaardwaarde is voor de afgeleide klasse. (Overgenomen van Attribute) |
| Match(Object) |
Wanneer deze wordt overschreven in een afgeleide klasse, wordt een waarde geretourneerd die aangeeft of dit exemplaar gelijk is aan een opgegeven object. (Overgenomen van Attribute) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Hiermee wordt een set namen toegewezen aan een bijbehorende set verzend-id's. (Overgenomen van Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Hiermee haalt u de typegegevens voor een object op, die kan worden gebruikt om de typegegevens voor een interface op te halen. (Overgenomen van Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Hiermee wordt het aantal type-informatieinterfaces opgehaald dat een object biedt (0 of 1). (Overgenomen van Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Biedt toegang tot eigenschappen en methoden die door een object worden weergegeven. (Overgenomen van Attribute) |