Winui 3 PropertyChanged событие не стрельба/обновление флажкиC#

Место общения программистов C#
Ответить
Anonymous
 Winui 3 PropertyChanged событие не стрельба/обновление флажки

Сообщение Anonymous »

Я работаю над этой ошибкой в ​​приложении Winui 3. Как вы можете видеть в следующем примере кода, когда вы устанавливаете/снимаете флажок с «DefaultProgramCheckBox», вызывается SetValue переменной «DefaultProgram», но событие PropertyChanged не запускается и не фиксируется ProcessPropertyChanged() в ViewModel, есть идеи, что такое основная причина этой проблемы. Спасибо.
Вот флажок в пользовательском интерфейсе. (Страница).


Вот код в ViewModel.cs
//Main model
[ObservableProperty]
private ProgramWrapper _desktopWrapper = new(new Program());

public ViewModel()
{
LoadAsync();

PropertyChanged += ProcessPropertyChanged;
DesktopWrapper.PropertyChanged += ProcessPropertyChanged;

}

private void ProcessPropertyChanged(object sender, PropertyChangedEventArgs e)
{
//PropertyChangedEvent not captured here when check/uncheck the checkbox
if (e.PropertyName == nameof(DesktopWrapper.DefaultProgram))
ShowDefaultProgramMessage();
}

Вот ProgramWrapper.cs:
public class ProgramWrapper : ModelWrapper
{
public ProgramWrapper(Program model) : base(model)
{

}

public bool DefaultProgram
{
get { return GetValue(); }
set { SetValue(value); } //When check/check the checkbox, SetValue is called.
}
}


Подробнее здесь: https://stackoverflow.com/questions/793 ... g-checkbox
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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