INameScope Rozhraní
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í.
Definuje kontrakt pro způsob přístupu k názvům elementů v rámci konkrétního oboru názvů XAML a jak vynutit jedinečnost názvů v rámci tohoto oboru názvů XAML.
public interface class INameScope
public interface INameScope
type INameScope = interface
Public Interface INameScope
- Odvozené
Poznámky
Toto rozhraní je implementováno třídami, které mají podřízené prvky, které jsou určeny k opakovanému použití prostřednictvím šablony nebo pozdržet metaforu. Šablony, továrny a podobné konstrukce musí mít jedinečné rozsahy názvů XAML, které jsou oddělené od grafu hlavních objektů a kořenového kódu XAML. Principem je, že při zavedení objektů vytvořených z těchto podřízených prvků do grafu objektů aplikace by nemělo docházet ke kolizím názvů, a aby se operace MODELU DOM a referenční techniky XAML, které spoléhají na identifikátor názvu, mohly spoléhat na jedinečnost názvu v každém oboru názvů XAML.
V předchozích verzích rozhraní .NET Framework existovalo toto rozhraní v sestavení WindowsBase specifickém pro WPF. V rozhraní .NET Framework 4 INameScope je v sestavení System.Xaml. Další informace najdete v tématu Typy migrované z WPF do System.Xaml.
Poznámky k využití WPF
Toto rozhraní je implementováno třídou NameScopeWPF . Většina operací namescope XAML ve WPF funguje pomocí NameScope instancí, ale informace se občas komunikují interně pomocí INameScope odkazů.
Příklady tříd WPF, které používají objekt pro vytváření nebo odložit metaforu v kombinaci s reprezentací XAML, jsou Style a FrameworkTemplate. Tyto implementace obvykle spoléhají na explicitní verze metod rozhraní, které jsou k dispozici z NameScope třídy .
Metody
FindName(String) |
Vrátí objekt, který má zadaný identifikační název. |
RegisterName(String, Object) |
Zaregistruje zadaný název do aktuálního rozsahu názvů XAML. |
UnregisterName(String) |
Zruší registraci zadaného názvu z aktuálního rozsahu názvů XAML. |