CreationPolicy Wyliczenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Określa, kiedy i jak zostanie utworzone wystąpienie części.
public enum class CreationPolicy
public enum CreationPolicy
type CreationPolicy =
Public Enum CreationPolicy
- Dziedziczenie
Pola
Any | 0 | Określa, że CompositionContainer będzie używać najbardziej odpowiedniego CreationPolicy dla części podanej bieżącego kontekstu. Jest to wartość domyślna CreationPolicy. Domyślnie użyje Sharedparametru , CompositionContainer chyba że żądania importera ComposablePartNonSharedlub . |
NonShared | 2 | Określa, że dla każdego obiektu żądającego zostanie utworzone CompositionContainer nowe wystąpienie nieudzielone skojarzonego ComposablePart wystąpienia. |
Shared | 1 | Określa, że pojedyncze udostępnione wystąpienie skojarzonego ComposablePart zostanie utworzone przez CompositionContainer element i udostępnione przez wszystkich żądających. |
Uwagi
W trakcie kompozycji CompositionContainer potrzebne są wystąpienia obiektów opisanych przez eksporty w celu wypełnienia importu. Jeśli jeden eksport jest używany do wypełniania wielu importów, istnieją dwa możliwe zachowania. Zostanie utworzone pojedyncze wystąpienie wyeksportowanego obiektu, a odwołanie do tego samego obiektu zostanie przekazane każdemu importerowi lub zostanie utworzone oddzielne wystąpienie wyeksportowanego obiektu dla każdego importera.
To zachowanie zależy od CreationPolicy właściwości dołączonej PartCreationPolicyAttribute do eksportu i RequiredCreationPolicy elementu ImportAttribute. Oba te elementy będą zawierać wartość z wyliczenia CreationPolicy . Jeśli zasady są niezgodne, eksport nie zostanie uznany za zgodny z danym importem. Poniższa tabela zawiera podsumowanie interakcji tych dwóch właściwości.
RequiredCreationPolicy | CreationPolicy Eksport określa dowolny lub żaden określony. | CreationPolicy Eksportowanie określa współużytkowany | Wyeksportuj CreationPolicy określa wartość Nieudostępniętą |
---|---|---|---|
Dowolne | Zostanie utworzone pojedyncze, udostępnione wystąpienie wyeksportowanego obiektu. | Zostanie utworzone pojedyncze, udostępnione wystąpienie wyeksportowanego obiektu. | Dla każdego importera zostanie utworzone nowe wystąpienie wyeksportowanego obiektu. |
Udostępniona | Zostanie utworzone pojedyncze, udostępnione wystąpienie wyeksportowanego obiektu. | Zostanie utworzone pojedyncze, udostępnione wystąpienie wyeksportowanego obiektu. | Eksport nie zostanie uznany za zgodny z importem. |
Nieudostępnionym | Dla każdego importera zostanie utworzone nowe wystąpienie wyeksportowanego obiektu. | Eksport nie zostanie uznany za zgodny z importem. | Dla każdego importera zostanie utworzone nowe wystąpienie wyeksportowanego obiektu. |