(WPF) Почему моя привязка данных возвращает значение null переменной класса в коде позади?C#

Место общения программистов C#
Ответить
Anonymous
 (WPF) Почему моя привязка данных возвращает значение null переменной класса в коде позади?

Сообщение Anonymous »


Итак, у меня есть страница регистрации в моем проекте WPF, которая использует привязки для извлечения данных из текстовых полей в моем XAML. Привязки связаны с записями, однако, когда я пытаюсь использовать данные в этих записях, он говорит, что записи имеют значение NULL. Я пытаюсь выполнить сравнение двух переменных внутри записи, но не могу, потому что запись продолжает возвращать ноль. (модель представления определенно привязана к представлению, которое я знаю благодаря тестированию). Извините, если это сбивает с толку, это мой первый вопрос.

Ниже приведены привязки для одного из ящиков моего пароля:

Это объявление записи внутри модели представления:

public PasswordConfirm PasswordConfirm { get; набор; } и это отдельная запись/класс, который он использует:

внутренний класс PasswordConfirm: ViewModelBaseClass { частная строка _initialPassword; общедоступная строка InitialPassword { получить {вернуться _initialPassword; } установить {_initialPassword = значение; OnPropertyChanged("НачальныйПароль"); } } частная строка _ SecondaryPassword; общедоступная строка SecondaryPassword { получить {вернуться _ SecondaryPassword; } установить {_ SecondaryPassword = значение; OnPropertyChanged("ВторичныйПароль"); } } частный ObservableCollection _passwordConfirmRecords; public ObservableCollection PasswordConfirmRecords { получить {вернуться _passwordConfirmRecords; } установить { _passwordConfirmRecords = значение; OnPropertyChanged("PasswordConfirmRecords"); } } Private void PasswordConfirm_CollectionChanged (отправитель объекта, NotifyCollectionChangedEventArgs e) { OnPropertyChanged("PasswordConfirmRecords"); } } Например, когда я пытаюсь запустить это, он всегда говорит, что UserRecord имеет значение null

if (PasswordConfirm != null) { если (PasswordConfirm.InitialPassword == PasswordConfirm.SecondaryPassword) { MainWindowVM mainVM = (MainWindowVM)Application.Current.MainWindow.DataContext; mainVM.CurrentDisplayPage = страница назначения; } еще { ErrorMsg = «Пароли не совпадают»; } } еще { ErrorMsg = "Пожалуйста, заполните все поля"; } еще раз извините, если это сбивает с толку, я постарался объяснить, как мог
Ответить

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

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

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

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

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