Я не мог настроить точку останова в свойстве SET модели View Model, поэтому значение по умолчанию не изменилось. (Get - это все правильно и инициализировать мой Text Box с допустимым значением по умолчанию.)Когда выполняется RaisePropertyChanged?
У меня есть model.cs , где поле общественной строки определенного
model.cs
{
..
public textDefValue = "aaa";
}
и здесь является ViewModel
{
..
Model model = new Model();
....
public string TextField
{
get { return model.textDefValue; }
set
{
//break point here
model.textDefValue = value;
RaisePropertyChanged(TextField);
}
}
....
protected void RaisePropertyChanged(string propertyName)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null)
{
handler(this, new PropertyChangedEventArgs(propertyName));
}
}
public event PropertyChangedEventHandler PropertyChanged;
}
И XAML:
<TextBox x:Name="myBox" Text="{Binding ViewModel.TextField, Mode=TwoWay}">
Я полагаю, что, когда я напечатаю некоторые вещь в этом текстовом поле, SET будет работать, и я буду нацелен на точку останова, но я не смог бы пробить этот разрыв в SET. Где ошибка?
, где определена модель ViewModel, в основном она перейдет через ресурс, который затем будет называться «Text =» {Binding TextField, Mode = TwoWay, Source = {StaticResource KeyOfViewModelInResources}} " – Icepickle
Трудно перевести все это, но проблема, вероятно, имеет какое-то отношение к вашему 'Binding'. Проверьте ** окно вывода ** для подсказок. Кроме того, вам не нужно создавать свойство в вашей модели просмотра только для того, чтобы выставить свойство вашей модели. Вместо этого вы можете просто привязать свойство модели. –