2017-06-27 5 views
0

Ich entwickle eine wpf-Anwendung mit MVVM-Muster. Ich deklariere eine Int-Eigenschaft in meiner ViewModel-Klasse. Wenn ich diese Eigenschaft ändere, werden die Änderungen nicht in der Benutzeroberfläche angezeigt. Andere Datentypen funktionieren gut in meiner Anwendung. Aber wenn geändert in Objekt eingeben, funktioniert es.Int binden in wpf mvvm

public class TestUserControlViewModel : UserControlViewModel 
{ 
    public TestUserControlViewModel(
     TestUserControlView testUserControlView) 
    { 
     UserControlView = testUserControlView; 
     Inital(); 
    } 

    public RelayCommand AddPriceRelayCommand { get; set; } 

    public override void InitalCommand() 
    { 
     AddPriceRelayCommand = new RelayCommand(AddPrice); 
    } 

    private void AddPrice() 
    { 
     Price += 10; 
    } 

    public override void InitalVariable() 
    { 
     Price = 59; 
    } 

    private int _price; 
    public int Price 
    { 
     get { return _price; } 
     set 
     { 
      _price = value; 
      RaisePropertyChanged(() => Price); 
     } 
    } 



} 

XAML:

<TextBox Text="{Binding Path=Price, Mode=TwoWay, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" /> 
+0

Wie werden Sie die Datacontext für Ihre XAML Einstellung? Haben Sie in 'AddPrice()' einen Haltepunkt gesetzt, um zu bestätigen, dass er tatsächlich aufgerufen wird? –

+0

Schnapp dir Snoop und untersuche deine Bindungen zur Laufzeit. Stellen Sie sicher, dass der DataContext wie erwartet ist. Es scheint nichts mit Ihrem Code zu tun zu haben. – Will

Antwort

-3

Stellen Sie sicher, dass die Datacontext wie erwartet,