Proprietà di dipendenza al di fuori del regno di WPF?

3

Esiste un concetto o un nome più generale per ciò che WPF chiama "proprietà di dipendenza"? Immagino che questo non sia un WPF-ism e in effetti altre librerie o framework hanno utilizzato un approccio simile? In tal caso, quali sono queste altre istanze e quali sono le somiglianze e le differenze rispetto alle proprietà di dipendenza di Microsoft?

Sono a un incrocio dove sto considerando di aggiungere "proprietà di dipendenza" al mio tipo di sistema e modello di oggetto (non correlato a WPF), in quanto la costruzione sembra appropriata per i miei requisiti di progettazione; tuttavia, voglio prendere in considerazione ciò che altri hanno creato, non solo la particolare implementazione di WPF.

    
posta DuckMaestro 20.06.2013 - 02:53
fonte

2 risposte

2

Le proprietà di dipendenza vengono utilizzate ogni volta che è necessario un meccanismo di associazione, ovvero un modo per riflettere le modifiche a una proprietà su un'altra.

Questo è molto utile in XAML, dove puoi associare gli attributi nel markup (senza usare il codice) e lasciare che sia il meccanismo DP a gestirlo.

Dato che hai familiarità con WPF, lo sai già. Ma il passaggio aggiuntivo è che XAML può essere utilizzato per rappresentare diversi modelli di oggetti. Flussi di lavoro, per esempio! Dai un'occhiata a WF3 (il framework originale Workflow Foundation, fornito con .NET 3.0) per vedere come vengono utilizzati i DP, mostra come possono funzionare (piuttosto bene) al di fuori del mondo WPF.

NOTA: guarda in particolare al WF3: come sottolineato nei commenti, il WF4 è abbastanza diverso (usa InArguments e OutArguments per passare valori tra le attività, e non ho idea di come siano implementati sotto la copertina). Inoltre, si noti che WF3 è obsoleto, è solo buono a guardarlo per scopi didattici - che è quello che stai cercando, suppongo

    
risposta data 21.06.2013 - 08:22
fonte
0

Sono abbastanza sicuro che le proprietà di dipendenza siano univoche per WPF (e framework derivati come Silverlight e WinRT).

Prima di WPF, l'associazione dei dati veniva effettuata principalmente attraverso interfacce e consumatori specifici. Per esempio. il modello ha implementato un'interfaccia specifica e il controllo dell'interfaccia utente ha consumato questa specifica interfaccia.

Inoltre, odio chiamare la proprietà di dipendenza come "Associazione dati". Preferisco di più chiamarlo "sincronizzazione di proprietà (o dati)", perché è una descrizione molto precisa di ciò che fa realmente la funzione.

    
risposta data 21.06.2013 - 10:26
fonte

Leggi altre domande sui tag