2011-12-07 15 views
7

Mi piacerebbe avere un oggetto (globale, singleton) nella mia applicazione che espone un numero di proprietà di dipendenza. Vorrei associare i valori in XAML a queste proprietà di dipendenza. Come posso ottenere questo in modo che la sintassi del mio binding XAML sia il più semplice possibile (in altre parole, non preoccuparmi costantemente di RelativeSource, AncestoryType, ecc.).XAML Binding: associazione alle proprietà di un oggetto "globale"

risposta

7

È possibile utilizzare l'estensione di markup x:Static per eseguire il binding direttamente a Singleton, poiché si tratta di una proprietà statica.

Ad esempio, se il Singleton aveva una proprietà denominata "Foo":

<TextBox Text="{x:Static local:YourSingleton.Instance.Foo}" /> 
+0

Questo sembra promettente. Com'è la sintassi quando YourSingleton si trova in uno spazio dei nomi diverso rispetto a xaml? – anthony

+0

@anthony È lo stesso - il "locale" è qualsiasi cosa tu abbia configurato nel tuo xmlns nella parte superiore di xaml per mappare lo spazio dei nomi su un prefisso. –

+0

Anche dopo averlo fatto, ottengo sempre un errore: "Impossibile trovare il tipo 'YourSingleton'" – anthony

Problemi correlati