Condividi tramite


IDestinationTypeProvider Interfaccia

Definizione

Rappresenta un servizio che può restituire un identificatore di sistema dei tipi CLR per il tipo di destinazione. Il tipo di destinazione è importante quando il tipo di destinazione per un'operazione di impostazione di proprietà viene indirettamente segnalato dalla reflection o da altri meccanismi.

public interface class IDestinationTypeProvider
public interface IDestinationTypeProvider
type IDestinationTypeProvider = interface
Public Interface IDestinationTypeProvider

Commenti

Il tipo restituito da GetDestinationType viene risolto dalla posizione corrente del flusso del nodo XAML usando il contesto dello schema XAML corrente.

Se si usa il sistema di tipi XAML implementato da .NET Framework servizi XAML e si accede al contesto del servizio in queste condizioni, GetDestinationType restituisce la UnderlyingType base delle informazioni sul sistema dei tipi XAML disponibili e sul contesto dello schema XAML basato su CLR.

Questo servizio è rilevante per le situazioni in cui la reflection CLR pura o altri meccanismi potrebbero non fornire informazioni sufficienti su un tipo di destinazione. Di seguito è riportato un elenco di alcuni scenari pertinenti per IDestinationTypeProvider:

  • Il sistema di tipi CLR segnala un tipo indiretto a causa del modo in cui CLR definisce e usa tipi e si vuole un vero tipo di destinazione. Ad esempio, le API in .NET Framework servizi XAML usano questo servizio internamente quando elaborano i membri dell'evento. Gli eventi vengono segnalati dalla reflection CLR pura come Delegate.

  • Si vuole assicurarsi che il tipo di destinazione di un convertitore di tipi corrisponda al tipo previsto che il convertitore di tipi può produrre. Questo scenario è utile quando il tipo di destinazione è parametrizzato o generico.

  • Il convertitore di valori viene chiamato da un utilizzo annidato in un altro convertitore di valori. In questo caso, GetDestinationType rimuove l'annidamento e restituisce il tipo di destinazione della proprietà effettiva impostata, anziché restituire il tipo di output di qualsiasi convertitore di valori di intervento.

I convertitori di tipi e le estensioni di markup possono eseguire query su IDestinationTypeProvider come servizio nel contesto del servizio fornito da un writer di oggetti XAML, quando il writer di oggetti XAML richiama il comportamento di conversione dei valori. Per altre informazioni, vedere Convertitori di tipi e estensioni di markup per contesti di servizio e XAML disponibili per convertitori di tipi e estensioni di markup.

Metodi

GetDestinationType()

Restituisce l'oggetto Type CLR che identifica il tipo di destinazione per il convertitore di tipi o l'estensione di markup pertinente.

Si applica a

Vedi anche