OnFilenameChanged не вызываетсяC#

Место общения программистов C#
Anonymous
OnFilenameChanged не вызывается

Сообщение Anonymous »

Код: Выделить всё

[QueryProperty("Filename", "Filename_")]
public partial class DetailsViewModel : ObservableObject
{

[ObservableProperty]
string filename;

partial void OnFilenameChanged(string value)
{
ReadFile();
}

[Relay Command]
async Task Edit(string s)
{
// filename passed as s
await Shell.Current.GoToAsync($"{"Edit"}?Filename_{s}");
}
}
Я использовал этот код, чтобы убедиться, что свойство было установлено вместо вызова ReadFile() из конструктора, где Filename имеет значение null, что отлично работало в моей DetailsViewModel, но при использовании той же идеи в моей EditViewModel метод OnFilenameChanged вообще не запускается.

Код: Выделить всё

[QueryProperty("Filename", "Filename_")]
public partial class EditViewModel : ObservableObject
{
[ObservableProperty]
string filename;

partial void OnFilenameChanged(string value)
{
ReadFile();
}
}
Сначала я думал, что проблема в методе ReadFile(), но я поставил на него точку останова, и он никогда не вызывался, что означает, что OnFilenameChanged тоже никогда не вызывается . Я пробовал играть с переменными, я прошел через это, и s - это имя файла, которое я хочу, чтобы оно было при передаче команде Edit.

Подробнее здесь: https://stackoverflow.com/questions/782 ... ing-called

Вернуться в «C#»