다음을 통해 공유


사용자 지정 구성 요소 속성 정의 및 PropertyChanged 이벤트 발생시키기

업데이트: 2007년 11월

클라이언트 구성 요소 클래스를 만들 경우 페이지 개발자가 액세스할 수 있는 속성을 정의할 수 있습니다. 또한 구성 요소의 속성에 대한 set 접근자에 Sys.Component.propertyChanged 알림 이벤트를 발생시킬 수 있습니다. 구성 요소를 사용하는 페이지 개발자는 속성 값이 변경될 경우 코드를 실행하도록 속성 알림 이벤트를 해당 처리기에 바인딩할 수 있습니다.

사용자 지정 클라이언트 구성 요소에 공용 속성 정의

ASP.NET AJAX클라이언트 구성 요소에서 속성 접근자는 클래스 프로토타입의 메서드로 정의됩니다. 접근자 메서드 이름은 속성 이름이 뒤에 오는 get_ 및 set_ 접두사를 사용하여 지정됩니다. 다음 예제에서는 클래스 프로토타입의 interval이란 읽기/쓰기 속성을 정의하는 방법을 보여 줍니다.

get_interval: function() {
    return this._interval;
},
set_interval: function(value) {
    this._interval = value;
}

PropertyChanged 이벤트 발생시키기

속성 set 접근자에서 Sys.Component raisePropertyChanged 메서드를 호출하여 propertyChanged 이벤트를 발생시킬 수 있습니다. 구성 요소는 Sys.Component, Sys.UI.Behavior 또는 Sys.UI.Control 기본 클래스에서 raisePropertyChanged 메서드를 상속합니다.

다음 예제에서는 속성이 설정될 때마다 interval 속성에 대한 propertyChanged 이벤트를 발생시키는 방법을 보여 줍니다.

get_interval: function() {
    return this._interval;
},
set_interval: function(value) {
    if (this._interval !== value) {
        this._interval = value;
        this.raisePropertyChanged('interval');
    }
}

사용자 지정 구성 요소의 propertyChanged 이벤트를 발생시키고 처리하는 방법에 대한 예제는 사용자 지정 비시각적 클라이언트 구성 요소 만들기를 참조하십시오. raisePropertyChanged 메서드에 대한 자세한 내용은 Sys.Component.raisePropertyChanged 메서드를 참조하십시오.

참고 항목

작업

사용자 지정 비시각적 클라이언트 구성 요소 만들기

개념

프로토타입 모델을 사용하여 클라이언트 구성 요소 클래스 만들기