ContentPropertyAttribute Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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í XAML atributu 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
- Atributy
Příklady
Následující příklad vytvoří třídu s názvem Film
, která má použitou ContentPropertyAttribute třídu. 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 není typu string
nebo object
, pokusí se procesor XAML identifikovat metodu převodu hodnoty. První kontrola se týká převodu nativního typu, a to buď primitiv jazyka XAML, nebo konkrétních nativních převodů povolených danou konkrétní implementací zapisovače XAML. Dalším krokem je vyhledání převaděče typů. V implementacích rozhraní .NET je převaděč typů identifikován na TypeConverterAttribute základě definice na úrovni člena nebo na úrovni typu, která platí. Pokud nelze identifikovat žádný převod hodnoty, zapisovač objektů XAML obvykle vyvolá výjimku.
Chcete-li přijmout více než jeden prvek objektu jako obsah, typ vlastnosti obsahu XAML musí být podporován jako typ kolekce.
Inherited=true
Z důvodu deklarace atributu hodnota pro ContentPropertyAttribute obvykle používá 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 poznamenat, že třída nemá žádnou vlastnost obsahu). Pokud použijete jiný název ContentPropertyAttribute , zděděné ContentPropertyAttribute nahradíte novým.
V předchozích verzích rozhraní .NET Framework tato třída existovala v sestavení WINDOWSBase specifickém pro WPF a měla také paralelní implementaci v systému Windows Communication Foundation (WCF). Počínaje rozhraním .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 nastavená objektem ContentPropertyAttribute. Button Pokud je instance vytvořena v XAML, Content bude nastavena Button na element, který je mezi značkami start a end button.
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 tuto Attributetřídu . (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() |
Získá aktuální Type instanci. (Zděděno od Object) |
IsDefaultAttribute() |
Při přepsání v odvozené třídě označuje, zda je hodnota této instance výchozí hodnotou pro odvozenou třídu. (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ří mělkou kopii aktuálního Objectsouboru . (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 pro 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) |