INotifyPropertyChanged.PropertyChanged Kejadian
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Terjadi saat nilai properti berubah.
// 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
Jenis Acara
Contoh
Contoh ini menunjukkan cara mengimplementasikan antarmuka INotifyPropertyChanged dan mengaktifkan peristiwa PropertyChanged setiap kali nilai properti berubah. Untuk daftar kode lengkap, lihat sampel pengikatan data 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));
}
}
}
}
Keterangan
Saat membangun aplikasi UWP dengan Microsoft .NET Framework, antarmuka ini disembunyikan dan pengembang harus menggunakan antarmuka System.ComponentModel.INotifyPropertyChanged.
Peristiwa PropertyChanged dapat menunjukkan bahwa semua properti pada objek telah berubah dengan menggunakan String.Empty untuk properti PropertyName dari PropertyChangedEventArgs. Perhatikan bahwa Anda tidak dapat menggunakan null untuk ini seperti yang Anda bisa di Windows Presentation Foundation (WPF) dan Microsoft Silverlight.