J'utilise le modèle View View-Model pour une application WPF. J'ai un ViewModel (défini en tant que pages DataContext) avec deux propriétés, dont l'une est une entité avec un événement PropertyChanged. Dans le gestionnaire d'événements, je définis la valeur de l'autre propriété (un booléen) à une certaine valeur.WPF: actualisation d'un contrôle avec une propriété liée à l'aide de la vue Modèle View-Model
Maintenant, les propriétés Button et TextBox se lient correctement au premier chargement et l'événement PropertyChanged déclenche et fait sa chose. Toutefois, la propriété IsEnable de Button ne se met pas à jour pour refléter la modification de la propriété à laquelle elle est liée.
Le ViewModel ressemble sorta comme ceci:
public sealed class CustomerPageViewModel
{
public Customer Customer
{
get;
set;
}
public bool Editing
{
get;
private set;
}
private void Customer_PropertyChanged(object sender,
System.ComponentModel.PropertyChangedEventArgs e)
{
Editing = true;
}
}
Et le XAML ressemble sorta comme ceci:
<TextBox Text="{Binding Customer.Name}" />
<Button Content="Save Changes" IsEnabled="{Binding Editing}" />
Comment puis-je obtenir le bouton pour mettre à jour sa propriété IsEnable lorsque je change la propriété sous-jacente dans le ViewModel?
oups, votre droite. J'ai implémenté l'interface et déclenché l'événement maintenant lorsque l'édition est modifiée. C'était tout ce qui était nécessaire. Merci. – andrej351