ContentPropertyAttribute Třída

Definice

Určuje, která vlastnost typu je vlastnost obsahu XAML. Procesor XAML používá tyto informace při zpracování podřízených elementů XAML reprezentací atributovaného typu.

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
Dědičnost
ContentPropertyAttribute
Atributy

Příklady

Následující příklad vytvoří třídu s názvem Film , která má použitou ContentPropertyAttribute . Vlastnost s názvem Title je označena jako vlastnost obsahu.

[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

Poznámky

Pokud přidružená vlastnost ContentPropertyAttribute typu není string nebo object, procesor XAML se pokusí identifikovat metodu převodu hodnoty. První kontrola spočívá v převodu nativního typu, ať už z primitiv jazyka XAML nebo konkrétních nativních převodů povolených konkrétní implementací zapisovacího kódu XAML. Dalším krokem je vyhledání převaděče typů. V implementacích .NET se převaděč typů identifikuje na TypeConverterAttribute základě definice úrovně člena nebo úrovně typu, která se vztahuje. Pokud nelze identifikovat žádný převod hodnoty, zapisovač objektů XAML obvykle vyvolá výjimku.

Aby bylo možné jako obsah přijmout více než jeden prvek objektu, musí být typ vlastnosti obsahu XAML podporován jako typ kolekce.

Inherited=true Vzhledem k deklaraci atributu použije hodnota pro ContentPropertyAttribute normální použití označení vlastnosti obsahu také pro všechny odvozené třídy. Použití prázdné ContentPropertyAttribute umožňuje odvozené třídě odebrat deklaraci atributu vlastnosti obsahu základní třídou (a uvědomit si, že třída nemá žádnou vlastnost obsahu). Použití jiného pojmenovaného souboru ContentPropertyAttribute nahradí zděděnou ContentPropertyAttribute novou.

V předchozích verzích .NET Framework existovala tato třída ve windowsBase specifickém pro WPF a měla také paralelní implementaci v Windows Communication Foundation (WCF). Počínaje .NET Framework 4.0 ContentPropertyAttribute je v sestavení System.Xaml. Další informace najdete v tématu Typy migrované z WPF do System.Xaml.

Poznámky k využití WPF

Příklad třídy v Windows Presentation Foundation (WPF), která používá ContentPropertyAttribute je ContentControl, ze které Button třída dědí. Vlastnost ContentControl.Content je vlastnost obsahu nastavena ContentPropertyAttribute. Button Pokud se vytvoří instance v XAML, Content Button nastaví se prvek, který je mezi značkami počátečního a koncového tlačítka.

Konstruktory

ContentPropertyAttribute()

Inicializuje novou instanci ContentPropertyAttribute třídy.

ContentPropertyAttribute(String)

Inicializuje novou instanci ContentPropertyAttribute třídy pomocí zadaného názvu.

Vlastnosti

Name

Získá název vlastnosti, která je vlastnost obsahu.

TypeId

Při implementaci v odvozené třídě získá jedinečný identifikátor pro tento Attribute.

(Zděděno od Attribute)

Metody

Equals(Object)

Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu.

(Zděděno od Attribute)
GetHashCode()

Vrátí hodnotu hash pro tuto instanci.

(Zděděno od Attribute)
GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
IsDefaultAttribute()

Při přepsání v odvozené třídě určuje, zda hodnota této instance je výchozí hodnotou odvozené třídy.

(Zděděno od Attribute)
Match(Object)

Při přepsání v odvozené třídě vrátí hodnotu, která označuje, zda se tato instance rovná zadanému objektu.

(Zděděno od Attribute)
MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání.

(Zděděno od Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Načte informace o typu objektu, který lze použít k získání informací o typu rozhraní.

(Zděděno od Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1).

(Zděděno od Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Poskytuje přístup k vlastnostem a metodám vystaveným objektem.

(Zděděno od Attribute)

Platí pro

Viz také