Sto cercando di legare il mio titolo della finestra a una proprietà nel mio modello vista, in questo modo:WPF - vincolanti titolo della finestra di dati per visualizzare le proprietà del modello
Title="{Binding WindowTitle}"
La proprietà si presenta così:
/// <summary>
/// The window title (based on profile name)
/// </summary>
public string WindowTitle
{
get { return CurrentProfileName + " - Backup"; }
}
La proprietà CurrentProfileName è derivata da un'altra proprietà (CurrentProfilePath) impostata quando qualcuno apre o salva il profilo. All'avvio iniziale, il titolo della finestra è impostato correttamente, ma ogni volta che la proprietà CurrentProfilePath cambia, la modifica non viene visualizzata nel titolo della finestra come previsto.
Non penso di poter utilizzare una proprietà di dipendenza qui perché la proprietà è una derivata. La proprietà di base da cui è derivata è una proprietà di dipendenza, ma ciò non sembra avere alcun effetto.
Come è possibile rendere l'aggiornamento automatico del titolo del modulo basato su questa proprietà?
Bingo. Questo è stato. Domanda secondaria: il metodo OnPropertyChanged esistente ha accettato solo un oggetto DependencyProperty: è davvero necessario aggiungere l'effettivo evento PropertyChanged e un metodo personalizzato OnPropertyChanged alla mia classe o esiste un modo più semplice? – Chris
Sì, è necessario dichiarare l'evento. Il metodo esistente 'OnPropertyChanged' è ereditato da' DependencyObject' ed è solo per le proprietà di dipendenza. –
Vedere la mia risposta aggiornata per un esempio di codice –