INotifyPropertyChanged.PropertyChanged Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возникает при смене значения свойства.
// Register
event_token PropertyChanged(PropertyChangedEventHandler const& handler) const;
// Revoke with event_token
void PropertyChanged(event_token const* cookie) const;
// Revoke with event_revoker
INotifyPropertyChanged::PropertyChanged_revoker PropertyChanged(auto_revoke_t, PropertyChangedEventHandler const& handler) const;
event PropertyChangedEventHandler PropertyChanged;
function onPropertyChanged(eventArgs) { /* Your code */ }
iNotifyPropertyChanged.addEventListener("propertychanged", onPropertyChanged);
iNotifyPropertyChanged.removeEventListener("propertychanged", onPropertyChanged);
- or -
iNotifyPropertyChanged.onpropertychanged = onPropertyChanged;
Event PropertyChanged As PropertyChangedEventHandler
Тип события
Примеры
В этом примере показано, как реализовать интерфейс INotifyPropertyChanged и запускать событие PropertyChanged при каждом изменении значений свойств. Полный список кода см. в примере привязки данных XAML.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DataBinding
{
public class Employee : INotifyPropertyChanged
{
private string _name;
private string _organization;
public string Name
{
get { return _name; }
set
{
_name = value;
RaisePropertyChanged("Name");
}
}
public string Organization
{
get { return _organization; }
set
{
_organization = value;
RaisePropertyChanged("Organization");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string name)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(name));
}
}
}
}
Комментарии
При создании приложения UWP с помощью платформа .NET Framework Майкрософт этот интерфейс скрыт, и разработчики должны использовать интерфейс System.ComponentModel.INotifyPropertyChanged.
Событие PropertyChanged может указать, что все свойства объекта были изменены с помощью String.Empty для свойства PropertyNameобъекта PropertyChangedEventArgs. Обратите внимание, что для этого нельзя использовать значение NULL, как в Windows Presentation Foundation (WPF) и Microsoft Silverlight.