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í jazyka XAML atributu.
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 . 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 nebo stringobject, 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í zapisovače XAML. Dalším krokem je vyhledání převaděče typů. V implementacích .NET je převaděč typů identifikován na TypeConverterAttribute základě buď členské úrovně, nebo definice úrovně typu, která se vztahuje. Pokud nelze identifikovat žádný převod hodnoty, zapisovač objektu XAML obvykle vyvolá výjimku.
Aby bylo možné přijmout více než jeden prvek objektu jako obsah, musí být typ vlastnosti obsahu XAML podporován jako typ kolekce.
Inherited=true Vzhledem k deklaraci atributu, 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 ContentPropertyAttribute nahradí zděděný ContentPropertyAttribute novým názvem.
V předchozích verzích rozhraní .NET Framework existovala tato třída v sestavení wpF specifickém pro WindowsBase a měla také paralelní implementaci ve Windows Communication Foundation (WCF). Počínaje rozhraním .NET Framework 4.0 ContentPropertyAttribute je v sestavení System.Xaml. Další informace naleznete v tématu Typy migrované z WPF do System.Xaml.
Poznámky k využití WPF
Příklad třídy ve Windows Presentation Foundation (WPF), který používá ContentPropertyAttribute je ContentControl, který Button třída dědí z. Vlastnost ContentControl.Content je vlastnost obsahu nastavena .ContentPropertyAttribute Button Pokud je instance v XAML, Content bude nastavena Button na element, který je mezi značkami počátečního a koncového tlačítka.
Konstruktory
| Name | Description |
|---|---|
| ContentPropertyAttribute() |
Inicializuje novou instanci ContentPropertyAttribute třídy. |
| ContentPropertyAttribute(String) |
Inicializuje novou instanci ContentPropertyAttribute třídy pomocí zadaného názvu. |
Vlastnosti
| Name | Description |
|---|---|
| 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
| Name | Description |
|---|---|
| Equals(Object) |
Vrátí hodnotu, která určuje, zda je tato instance rovna zadanému objektu. (Zděděno od Attribute) |
| GetHashCode() |
Vrátí kód hash pro tuto instanci. (Zděděno od Attribute) |
| GetType() |
Získá Type aktuální instance. (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 pro odvozenou třídu. (Zděděno od Attribute) |
| Match(Object) |
Při přepsání v odvozené třídě vrátí hodnotu, která určuje, zda se tato instance rovná zadanému objektu. (Zděděno od Attribute) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního 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í
| Name | Description |
|---|---|
| _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) |