Je souhaite que mes zones de texte ne soient mises à jour que lorsque le bouton de mise à jour est cliqué au lieu de changer de propriété. Je les ai mis à UpdateSourceTrigger = Explicite, maintenant j'ai juste besoin du bouton pour appeler BindingExpression.UpdateSource.C# Appel de BindingExpression.UpdateSource dans UWP MVVM
<TextBox x:Name="textBox_No" HorizontalAlignment="Left" Margin="650,145,0,0" TextWrapping="Wrap" Text="{Binding SelectedItem.Hotel_No, Mode=TwoWay, UpdateSourceTrigger=Explicit}" VerticalAlignment="Top"/>
<TextBox x:Name="textBox_Name" HorizontalAlignment="Left" Margin="650,218,0,0" TextWrapping="Wrap" Text="{Binding SelectedItem.Name, Mode=TwoWay, UpdateSourceTrigger=Explicit}" VerticalAlignment="Top"/>
<TextBox x:Name="textBox_Address" HorizontalAlignment="Left" Margin="650,305,0,0" TextWrapping="Wrap" Text="{Binding SelectedItem.Address, Mode=TwoWay, UpdateSourceTrigger=Explicit}" VerticalAlignment="Top"/>
<Button x:Name="button" Content="Update" HorizontalAlignment="Left" Margin="655,388,0,0" VerticalAlignment="Top" Command="{Binding HotelHandler.UpdateCommand, Mode=TwoWay}"/>
Y at-il un moyen facile d'appeler BindingExpression.Updatesource sans code-behind? La principale raison pour laquelle je cherche une solution non-code-behind est que j'apprends à l'école pour éviter le code-behind à peu près tous les coûts.
Il y a un malentendu commun MVVM que vous ne devriez pas utiliser le code-behind du tout. Je pense que c'est une bonne pratique d'utiliser le code-behind pour la fonctionnalité qui est spécifique à la vue et garder le modèle de vue pour la logique de l'application. Votre ViewModel devrait facilement s'adapter derrière une autre vue qui représente la même donnée/logique sans bits impairs de code qui ne s'appliquent pas à cette vue. –