Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Bármely XAML tulajdonságattribútum értékét adja meg úgy, hogy ezt az értéket egy meghatározott erőforrásra mutató hivatkozásként kezeli. Az erőforrás keresési viselkedése hasonló a futásidejű kereséshez.
XAML-attribútumok használata
<object property="{DynamicResource key}" ... />
XAML tulajdonságelem-használat
<object>
<object.property>
<DynamicResource ResourceKey="key" ... />
</object.property>
</object>
XAML-értékek
| Érték | Leírás |
|---|---|
key |
A kért erőforrás kulcsa. Ezt a kulcsot eredetileg a x:Key Directive rendelte hozzá, ha az erőforrás jelölőnyelvben lett létrehozva, vagy key paraméterként lett megadva, amikor meghívják a ResourceDictionary.Add-at, ha az erőforrás kódban jött létre. |
Megjegyzések
A DynamicResource létrehoz egy ideiglenes kifejezést a kezdeti fordítás során, és így elhalasztja az erőforrások keresését, amíg a kért erőforrásértékre ténylegesen szükség van egy objektum létrehozásához. Ez az XAML-oldal betöltése után is előfordulhat. Az erőforrás értéke az aktuális lap hatókörétől kezdődően az összes aktív erőforrás-szótárban történő kulcskeresés alapján lesz megtalálva, és a fordítási folyamatból származó helyőrző kifejezés helyére kerül.
Fontos
A függőségi tulajdonság prioritását tekintve egy DynamicResource kifejezés egyenértékű azzal a pozícióval, ahol a dinamikus erőforrás-hivatkozás van alkalmazva. Ha olyan tulajdonság helyi értékét állítja be, amely korábban DynamicResource kifejezéssel rendelkezett helyi értékként, a DynamicResource teljesen el lesz távolítva. További információk:Dependency Property Value Precedence.
Bizonyos erőforrás-hozzáférési forgatókönyvek különösen alkalmasak a DynamicResource-ra, mint a StaticResource Markup bővítményre. A és DynamicResourcerelatív előnyeiről és teljesítménybeli következményeiről a StaticResource olvashat.
A megadott ResourceKey meg kell felelnie egy meglévő erőforrásnak, amelyet x:Key Directive meghatározott bizonyos szinten a lapon, az alkalmazásban, a rendelkezésre álló vezérlőtémákban és külső erőforrásokban vagy rendszererőforrásokban, és az erőforrás-keresés ebben a sorrendben fog történni. További információ a statikus és dinamikus erőforrások erőforrás-kereséséről: XAML-erőforrások.
Az erőforráskulcs az XamlName nyelvhelyességidefiniált karakterlánc lehet. Az erőforráskulcsok más objektumtípusok is lehetnek, például Type. A Type kulcs alapvető fontosságú ahhoz, hogy a vezérlőket témák szerint lehessen formázni. További információért lásd: Vezérlőszerkesztési áttekintés.
Az erőforrásértékek (például FindResource) keresésére szolgáló API-k ugyanazt az erőforrás-keresési logikát követik, mint amelyet a DynamicResourcehasznál.
Az erőforrásra való hivatkozás alternatív deklaratív módja a StaticResource Markup extension.
Az attribútumszintaxis a korrektúrakiterjesztés leggyakoribb szintaxisa. A DynamicResource azonosító sztringje után megadott karakterlánc token a mögöttes ResourceKey bővítményosztály DynamicResourceExtension értékéhez van hozzárendelve.
DynamicResource használható az objektumelem szintaxisában. Ebben az esetben a ResourceKey tulajdonság értékének megadása szükséges.
DynamicResource olyan részletes attribútumhasználatban is használható, amely a ResourceKey tulajdonságot tulajdonság=érték párként határozza meg:
<object property="{DynamicResource ResourceKey=key}" ... />
A részletes használat gyakran hasznos olyan bővítmények esetében, amelyek több beállítási tulajdonsággal rendelkeznek, vagy ha egyes tulajdonságok nem kötelezőek. Mivel DynamicResource csak egy beállítási tulajdonsággal rendelkezik, ami kötelező, ez a bőbeszédű használat nem jellemző.
A WPF XAML processzor implementációjában a jelölőbővítmény kezelését a DynamicResourceExtension osztály határozza meg.
DynamicResource egy korrektúrakiterjesztés. Jelölőkiterjesztéseket általában akkor alkalmaznak, amikor szükség van arra, hogy az attribútumértékek ne csak konstans értékek vagy kezelőnevek legyenek, és a követelmény globálisabb, mint bizonyos típusok vagy tulajdonságok esetében a típuskonverterek használata. Az XAML-ben az összes korrektúrakiterjesztés az attribútumszintaxisában a { és } karaktert használja, amely az a konvenció, amellyel az XAML-processzor felismeri, hogy egy korrektúrakiterjesztésnek fel kell dolgoznia az attribútumot. További információ: Korrektúrakiterjesztések és WPF XAML.
Lásd még
.NET Desktop feedback