다음을 통해 공유


HTML 클라이언트 API 참조

이 문서에서는 LightSwitch HTML 클라이언트에서 사용할 수 있도록 생성되어 있는 JavaScript API 항목에 대해 간략하게 소개합니다.

HTML 클라이언트 코드 진입점

각 엔터티와 화면 및 앱 자체는 앱에 대한 사용자 지정 JavaScript 코드를 작성할 수 있는 다음과 같은 진입점을 노출합니다.

Entity Created

Screen Created

Screen Before Apply Changes

Application Save

Screen Methods

Screen Content Render

Screen Content Post Render

엔터티 작성

myapp.[EntityName].created = function (entity) {};

이 메서드는 엔터티가 만들어질 때 호출됩니다. 엔터티 개체는 엔터티 디자이너에 나열된 각 속성에 대한 생성된 속성을 만듭니다.

이 메서드는 일반적으로 엔터티의 전역 속성 값을 설정하는 데 사용됩니다. 다음 예제에서는 Patient 엔터티의 Boolean Insured 속성에 대한 초기값을 설정합니다.

myapp.Patient.created = function (entity) {
    entity.Insured = new Boolean();
    entity.Insured = 'true';
};

이 진입점에 액세스하려면 엔터티에 대해 디자이너를 열고 HTMLClient 원근감을 선택합니다. 코드 작성 목록에서 작성됨을 선택합니다.

화면 작성

myapp.[ScreenName].created = function (screen) {}

이 메서드는 화면이 만들어질 때마다 호출됩니다.

이 메서드는 일반적으로 화면 필드의 초기값을 설정하는 데 사용됩니다. 다음 예제에서는 AddEditPatient 화면의 상태 필드에 대한 값을 설정합니다.

myapp.AddEditPatient.created = function (screen) {
   screen.Patient.State = 'CA'
};

이 진입점에 액세스하려면 이 화면에 대해 디자이너를 엽니다. 코드 작성 목록에서 작성됨을 선택합니다.

변경 사항 적용 전 화면

myapp.[ScreenName].beforeApplyChanges = function (screen) {};

이 메서드는 화면에 대해 저장 작업이 시작될 때마다 호출됩니다. 메서드가 true를 반환하면 저장 작업이 진행되며 false를 반환하면 저장 작업이 취소됩니다. 메서드가 WinJs.Promise 개체를 반환하면 저장 작업은 promise가 완료(또는 실패)될 때까지 기다린 다음 진행됩니다.

이 메서드는 일반적으로 화면 유효성 검사 논리에 사용됩니다. 다음 예제에서는 PatientName 필드의 유효성을 검사합니다.

myapp.AddEditPatient.beforeApplyChanges = function (screen) {
    if (screen.Patient.PatientName.indexOf('!') != -1) {
        screen.findContentItem("PatientName").validationResults = [
        new msls.ValidationResult(
        screen.Patient.details.properties.PatientName,
        "Patient Name cannot contain the character '!'.")
        ];
        return false;
    }
};

이 진입점에 액세스하려면 이 화면에 대해 디자이너를 엽니다. 코드 작성 목록에서 beforeApplyChanges를 선택합니다.

응용 프로그램 저장

myapp.onsavechanges = function () {}

이 메서드는 beforeApplyChanges 메서드가 true를 반환한 이후 저장 작업이 수행될 때 호출됩니다.

이 메서드는 일반적으로 여러 데이터 소스를 저장하는 등의 저장 작업에 논리를 추가하는 데 사용됩니다. 다음 예제에서는 WinJs.Promise 개체를 사용하여 기본 제공 저장 명령을 사용자 지정합니다.

myapp.onsavechanges = function (e) {
    var promises = [];
    promises.push(myapp.activeDataWorkspace.NorthwindData.saveChanges());
    promises.push(myapp.activeDataWorkspace.ApplicationData.saveChanges());
    e.detail.promise = WinJS.Promise.join(promises);
};

이 진입점에 액세스하려면 화면에 대해 디자이너를 연 다음 코드 작성을 선택합니다.

화면 메서드

화면 디자이너의 화면 멤버 목록에 나열되는 각 화면 메서드에는 execute 및 canExecute라는 두 가지 메서드를 사용할 수 있습니다. execute 메서드는 일반적으로 사용자가 단추를 클릭했을 때 기능을 수행하는 데 사용됩니다. canExecute 메서드는 일반적으로 조건에 따라 단추를 활성화 또는 비활성화하는 데 사용됩니다.

메서드 시그니처

설명

예제

myapp.MyScreen.MyMethod_execute = function (screen) { };

MyMethod 단추가 클릭되었거나 MyScreen.MyMethod() 메서드가 코드에서 호출되었을 때 실행됩니다.

다음 예제는 BrowseCustomers 화면에 선택되어 있는 Customer를 삭제합니다.

myapp.BrowseCustomers.DeleteSelected_execute = function (screen) {
    screen.getCustomers().then(function (customers) {
        customers.deleteSelected();
    });
};

myapp.MyScreen.MyMethod_canExecute = function (screen) { };

메서드 실행 전에 호출됩니다. 이 함수가 false를 반환하면 MyMethod 단추가 비활성화되며 true를 반환하면 활성화됩니다.

다음 예제에서는 아직 저장되지 않은 레코드에 대해 Delete 단추를 비활성화합니다.

myapp.MyScreen.Delete_canExecute = function (screen) {
    return (screen.MyEntity.Id != null);
};

화면 메서드에 액세스하려면 화면 디자이너의 왼쪽 창에서 메서드의 바로 가기 메뉴를 연 다음 메서드를 선택합니다.

화면 콘텐츠 렌더링

myapp.[ScreenName].[ContentItemName]_render = function (element, contentItem)

이 메서드는 화면이 만들어져 사용자 지정 컨트롤에만 적용될 때 호출됩니다. 이 메서드는 일반적으로 화면 컨트롤의 콘텐츠를 렌더링하는 데 사용됩니다.

element는 컨트롤의 HTML 요소입니다. $(element)를 사용하여 jQuery 개체를 만듭니다.

contentItem은 항목의 값, 데이터 바인딩 및 유효성 검사 결과에 대한 액세스를 허용하는 msls.ContentItem 개체입니다.

다음 예제는 RowTemplate 컨트롤의 각 행에 대한 OrderDate를 표시합니다.

myapp.BrowseOrders.RowTemplate_render = function (element, contentItem) { 
 var orderDate = $("<p>" + contentItem.value.OrderDate + "</p>"); 
 orderDate.appendTo($(element)); 
};

render 메서드에 액세스하려면 화면 디자이너에서 사용자 지정 컨트롤을 선택합니다. 코드 작성 목록에서 ControlName_render를 선택합니다.

화면 콘텐츠 렌더링 후

myapp.BrowseTable1Items.ContentItem2_postRender = function (element, contentItem) {};

이 메서드는 화면이 만들어지거나 새로 고쳐진 후 호출됩니다. 이 메서드는 일반적으로 화면 컨트롤의 콘텐츠나 모양을 수정하는 데 사용됩니다.

element는 컨트롤의 HTML 요소입니다. $(element)를 사용하여 Jquery 개체를 만듭니다.

contentItem은 항목의 값, 데이터 바인딩 및 유효성 검사 결과에 대한 액세스를 허용하는 msls.ContentItem 개체입니다.

다음 예제는 Unit이라는 이름의 컨트롤에 두 소수 자릿수를 나타내도록 Double의 서식을 지정합니다.

myapp.ViewItems.Unit_postRender = function (element, contentItem) {
    contentItem.dataBind("value", function (value) {
        if (value) {
            $(element).text(value.toFixed(2));
        }
    });
}

postRender 메서드에 액세스하려면 화면 디자이너에서 컨트롤을 선택합니다. 코드 작성 목록에서 ControlName_postRender를 선택합니다.

생성된 개체 모델

LightSwitch는 HTML 클라이언트에서 사용자 지정 코드를 작성할 때 사용할 수 있는 프로젝트 자산을 기반으로 사용자 지정 API 집합을 생성합니다. 각 데이터 소스, 테이블, 쿼리 및 화면은 API 집합에 다양한 항목을 생성합니다.

msls

msls.application

msls.BusinessObject

msls.CollectionChange

msls.CollectionChangeAction

msls.ContentItem

msls.ContentItemKind

msls.DataService

msls.DataServiceQuery

msls.DataWorkspace

msls.Entity

msls.EntityCollection

msls.EntitySet

msls.EntityState

msls.HeightSizingMode

msls.HorizontalAlignment

msls.MergeOperation

msls.MessageBoxButtons

msls.MessageBoxResults

msls.NavigateBackAction

msls.ObjectWithDetails

msls.PageKind

msls.Screen

msls.Sequence

msls.TransitionAnimationLevel

msls.ValidationResult

msls.VisualCollection

msls.WidthSizingMode

msls

(전역 변수) msls

멤버

_run

promiseOperation

relativeDates

relativeDateTimeOffsets

render

showMessageBox

showProgress

_run

_run([homeScreenId : String])

LightSwitch 응용 프로그램을 비동기식으로 시작합니다. 이 메서드는 응용 프로그램의 default.html 파일에서 호출됩니다.

반환 형식: WinJS.Promise

promiseOperation

promiseOperation(init(operations), [independent: Boolean])

새 작업을 시작하고 해당 작업이 완료되면 promise 개체를 반환합니다.

반환 형식: WinJS.Promise

예제:

//Method that imports data from Northwind.svc
myapp.BrowseOrders.ImportOrders_execute = function (screen) { 
    var northwind = "http://services.odata.org/Northwind/Northwind.svc"; 
    return msls.promiseOperation(function (operation) { 
        OData.read({ requestUri: northwind + "/Orders?$top=10", 
            recognizeDates: true, 
            enableJsonpCallback: true }, 
                     function success(result) { 
                         var results = result.results; 
                         for (var i = 0, len = results.length; i < len; i++) { 
                             var importedOrder = screen.Orders.addNew(); 
                             importedOrder.OrderDate = results[i].OrderDate; 
                         }  
                         operation.complete(); 
                     }, 
                     function error(e) { operation.error(e); }); 
    }); 
};

relativeDates

relativeDates

전역적으로 정의된 상대 날짜에 대한 구현을 포함합니다.

반환 형식: Date

"end"로 시작하는 메서드는 23:59:59 시간을 반환합니다. "start"로 시작하는 메서드는 00:00:00 시간을 반환합니다.

메서드

반환 값

endOfDay()

현재 날짜가 끝나는 날짜와 시간입니다.

endOfMonth()

현재 달이 끝나는 날짜와 시간입니다.

endOfQuarter()

현재 분기가 끝나는 날짜와 시간입니다.

endOfWeek()

현재 주가 끝나는 날짜와 시간입니다.

endOfYear()

현재 연도가 끝나는 날짜와 시간입니다.

now()

현재 날짜와 시간입니다.

startOfMonth()

현재 달이 시작되는 날짜와 시간입니다.

startOfQuarter()

현재 분기가 시작되는 날짜와 시간입니다.

startOfWeek()

현재 주가 시작되는 날짜와 시간입니다.

startOfYear()

현재 연도가 시작되는 날짜와 시간입니다.

today()

00:00:00 시간의 현재 날짜입니다.

다음 코드 예제는 제공된 날짜에 대한 관련 startOfWeek 및 endOfWeek 값을 반환합니다.

myapp.AddEditAppointment.created = function (screen) {
    // Write code here. 
    var currDT = new Date();
    ws = msls.relativeDates.startOfWeek(currDT);
    we = msls.relativeDates.endOfWeek(currDT);
    screen.Appointment.StartDate = ws;
    screen.Appointment.EndDate = we;
}

relativeDateTimeOffsets

relativeDateTimeOffsets

UTC(협정 세계시)의 오프셋을 사용하여, 전역적으로 정의된 상대 날짜에 대한 구현을 포함합니다.

반환 형식: Date

"end"로 시작하는 메서드는 23:59:59 시간을 반환합니다. "start"로 시작하는 메서드는 00:00:00 시간을 반환합니다.

메서드

반환 값

endOfDay()

현재 날짜가 끝나는 날짜와 시간입니다.

endOfMonth()

현재 달이 끝나는 날짜와 시간입니다.

endOfQuarter()

현재 분기가 끝나는 날짜와 시간입니다.

endOfWeek()

현재 주가 끝나는 날짜와 시간입니다.

endOfYear()

현재 연도가 끝나는 날짜와 시간입니다.

now()

현재 날짜와 시간입니다.

startOfMonth()

현재 달이 시작되는 날짜와 시간입니다.

startOfQuarter()

현재 분기가 시작되는 날짜와 시간입니다.

startOfWeek()

현재 주가 시작되는 날짜와 시간입니다.

startOfYear()

현재 연도가 시작되는 날짜와 시간입니다.

today()

00:00:00 시간의 현재 날짜입니다.

render

render(element: HTMLElement, contentItem: msls.ContentItem)

루트 HTML 요소 내부의 콘텐츠 항목에 대한 시각화를 렌더링합니다.

예제:

myapp.BrowseOrders.RowTemplate_render = function (element, contentItem) {
    var orderDate = $("<p>").text(contentItem.value.Customer.CompanyName);
    orderDate.appendTo($(element));
};

showMessageBox

showMessageBox(message:String, [options])

사용자에게 메시지 상자를 표시합니다.

반환 형식: WinJS.Promise

사용자가 메시지 상자를 닫으면 promise가 반환됩니다. 반환된 promise를 통해 메시지 상자(msls.MessageBoxResults 형식)의 결과에 액세스할 수 있습니다.

옵션:

매개 변수

설명

기본

title

메시지 상자의 제목입니다.

none

buttons

표시할 단추를 지정하는 msls.MessageBoxButtons 값입니다.

ok

예제:

myapp.AddEditCustomer.Delete_execute = function (screen) {
    msls.showMessageBox("Are You Sure?", {
        title: "Delete Customer",
    buttons: msls.MessageBoxButtons.yesNo
}).then(function (val) {
    if (val == msls.MessageBoxResult.yes) {
        screen.Customer.deleteEntity();
        myapp.commitChanges().then(null, function fail(e) {
            var errmsg = screen.Customer.Name + e.message;
            myapp.cancelChanges().then(function () {

                var resp = msls.showMessageBox(errmsg, {
                    title: "ERROR",
                    buttons: msls.MessageBoxButtons.ok
                });

                throw e;
            });

        });
    }
});
};

showProgress

showProgress(promise: WinJS.Promise)

promise가 확인되거나 거부될 때까지 응용 프로그램의 사용을 방지하는 진행률 표시기를 표시합니다.

예제:

msls.showProgress(msls.promiseOperation(function (operation) {
        $.getJSON(url, function (data) {
            operation.complete(data); //Operation completed successfully
        }).error(function (args) {
            operation.error(args); //Operation completed with error.
        });
    }) .then(function (result) {
        msls.showMessageBox(result);
    })
);

msls.application

활성 LightSwitch 응용 프로그램을 나타냅니다.

참고

myapp 개체는 msls.application의 바로 가기입니다.

Members

activeDataWorkspace

applyChanges

cancelChanges

commitChanges

navigateBack

navigateHome

options

showScreen

activeDataWorkspace

msls.application.activeDataWorkspace

응용 프로그램의 현재 작업 영역을 가져옵니다.

예제:

msls.application.activeDataWorkspace.ApplicationData.Query1("parameter value")
.execute().then(
        function (results) {
            if (results.results.length >= 0) {
                msls.showMessageBox("Found some records!");
            }
        },
        function (error) {
            alert(error);
        }
    );

applyChanges

msls.application.applyChanges()

중첩 변경 내용을 상위 변경 집합에 합치거나 최상위 변경 내용을 저장하여 보류 중인 변경 내용을 비동기적으로 적용하고 현재 화면에 머물러 있습니다. applyChanges를 호출하면 현재 변경 집합의 변경 내용이 모두 저장됩니다. 이 메서드는 변경 집합이 하나만 있으면 변경 내용을 데이터 소스에 저장합니다. 현재 변경 집합이 중첩 범위인 경우에는 변경 내용을 상위 변경 집합에 커밋합니다.

반환 형식: WinJS.Promise

예제:

// Save changes
msls.application.applyChanges().then(null, function fail(e) {

    // If an error occurs, show the error.
    msls.showMessageBox(e.message, { title: e.title }).then(function () {
        // Discard changes
        screen.details.dataWorkspace.ApplicationData.details.discardChanges();
    });
});

cancelChanges

msls.application.cancelChanges()

현재 변경 집합의 모든 변경 내용을 실행 취소하고 이전 화면으로 되돌아갑니다.

반환 형식: WinJS.Promise

예제:

msls.application.commitChanges().then(null, function fail(e) {
    alert(e.message);
    msls.application.cancelChanges();
    throw e;
});

commitChanges

msls.application.commitChanges()

중첩 변경 내용을 상위 변경 집합에 합치거나 최상위 변경 내용을 저장하여 보류 중인 변경 내용을 비동기적으로 커밋한 다음 이전 화면으로 되돌아갑니다. commitChanges를 호출하면 applyChanges와 마찬가지로 현재 변경 집합의 변경 내용이 모두 저장됩니다. 화면에 대한 유효성 검사가 먼저 실행되고 오류가 없으면 saveChanges가 호출됩니다.

반환 형식: WinJS.Promise

예제:

msls.application.commitChanges().then(null, function fail(e) {
    alert(e.message);
    msls.application.cancelChanges();
    throw e;
});

msls.application. navigateBack()

사용자에게 보류 중인 변경 내용을 커밋하거나 취소하고 이전 화면으로 돌아가거나 현재 화면에 머물도록 하는 메시지를 표시합니다.

반환 형식: WinJS.Promise

msls.application. navigateHome()

홈 화면으로 비동기적으로 이동합니다.

반환 형식: WinJS.Promise

옵션

msls.application.options

LightSwitch 응용 프로그램에 영향을 주는 옵션의 값을 가져옵니다. 옵션은 msls._run 호출 전에 default.htm 파일에 설정되어 있어야 합니다.

옵션

형식

설명

defaultMergeOption

String

쿼리 결과를 로컬 캐시된 데이터와 병합하는 방식을 지정합니다. 이 옵션은 msls.MergeOption의 값으로 설정될 수 있습니다.

disableUrlScreenParameters

Boolean

화면 인스턴스의 URL을 만드는 데 기본 키가 사용되는지 여부를 지정합니다. HTML 클라이언트 화면의 책갈피 기능을 통해 사용자는 특정 화면 인스턴스의 URL을 복사한 다음 나중에 해당 인스턴스로 돌아갈 수 있습니다. 이 URL의 일부에는 화면 엔터티의 기본 키가 사용될 수 있으므로 기본 키에 중요한 정보가 포함된 경우에는 책갈피 기능을 사용하지 않도록 설정하여 사용자가 이러한 정보를 볼 수 없도록 할 수 있습니다.

enableModalScrollRegions

Boolean

대화 상자나 선택기와 같은 모달 뷰 내부에 독립 스크롤 영역을 사용할지 여부를 나타냅니다. 이 옵션을 활성화하지 않으면 모달 뷰가 전체 크기로 확장되어 사용자가 기본 브라우저 창에서 스크롤하여 모든 콘텐츠를 볼 수 있습니다. 이 옵션은 일부 장치에 더욱 효과적으로 작동합니다.

showContentBehindDialog

Boolean

대화 상자 뒤의 배경 화면에 대한 표시 여부를 나타냅니다. 대화 상자에는 항상 전체 화면 표시가 사용되므로 소형 장치에는 이 옵션이 영향을 주지 않습니다. 대형 장치에서 배경 화면을 표시하지 않을 경우 성능이 향상될 수 있습니다.

transitionAnimationLevel

String

전환 중에 발생하는 애니메이션의 수준을 지정합니다. 애니메이션이 단순하면 일부 장치의 성능이 향상될 수 있습니다. 이 옵션은 msls.TransitionAnimationLevel의 값으로 설정될 수 있습니다.

showScreen

msls.application.showScreen(screenId, [Array parameters],[options])

특정 화면으로 비동기적으로 이동합니다.

매개 변수 screenId: 화면의 모델링된 이름 또는 화면을 정의하는 모델 항목입니다.

선택적 매개 변수 parameters: 화면 매개 변수의 배열입니다(해당되는 경우).

선택적 매개 변수 options: 다음 옵션 중 하나 이상을 제공하는 개체입니다.

  • beforeShown: 경계 동작이 적용되었지만 아직 화면이 표시되지 않은 상태에서 호출되는 함수입니다.

  • afterClosed: 경계 동작이 적용되고 화면이 닫힌 후 호출되는 함수입니다.

반환 형식: WinJS.Promise

예제:

msls.application.showScreen(AddEditPatient, null, {
    afterClose: function (addEditScreen, navigationAction) {
        if (navigationAction == msls.NavigateBackAction.commit) {
            var newPatient = addEditScreen.Patient;
            msls.application.showViewPatient(newPatient)
        }
    }
});

msls.BusinessObject

msls.BusinessObject()

비즈니스 개체를 나타냅니다.

멤버

멤버

설명

형식

details

비즈니스 개체에 대한 세부 정보를 나타냅니다.

msls.BusinessObject.Details

owner

이 세부 정보 개체를 소유한 비즈니스 개체를 가져옵니다.

msls.BusinessObject

properties

소유자의 속성에 대한 속성 개체 집합을 가져옵니다.

msls.BusinessObject.Details.PropertySet

msls.CollectionChange

msls.CollectionChange(action, [items], [oldStartingIndex], [newStartingIndex])

컬렉션 변경 이벤트의 데이터를 제공합니다.

매개 변수 action: 이벤트를 발생시킨 msls.CollectionChangeAction 형식의 작업입니다.

선택적 매개 변수 items: 작업의 영향을 받는 항목으로 구성된 배열(컬렉션)입니다.

선택적 매개 변수 oldStartingIndex: 제거된 항목의 인덱스입니다(해당되는 경우).

선택적 매개 변수 newStartingIndex: 추가된 항목의 인덱스입니다(해당되는 경우).

멤버

멤버

설명

형식

action

이벤트를 발생시킨 작업에 대한 설명을 가져옵니다.

String

items

작업의 영향을 받는 항목으로 구성된 배열(컬렉션)을 가져옵니다.

Object

newStartingIndex

추가된 항목의 인덱스를 가져옵니다(해당되는 경우).

Integer

oldStartingIndex

제거된 항목의 인덱스를 가져옵니다(해당되는 경우).

Integer

msls.CollectionChangeAction

msls.CollectionChangeAction

컬렉션이 변경된 방식을 지정합니다.

설명

add

항목이 컬렉션에 추가된 것으로 지정합니다.

refresh

전체 컬렉션이 변경된 것으로 지정합니다.

remove

항목이 컬렉션에서 제거된 것으로 지정합니다.

msls.ContentItem

msls.ContentItem(screenObject, model)

화면에서 시각화되는 콘텐츠 항목에 대한 뷰 모델을 나타냅니다. ContentItem은 postRender 및 render 메서드의 contentItem 인수로 사용할 수 있습니다.

매개 변수 screenObject: 이 콘텐츠 항목을 소유한 화면(msls.Screen 형식)입니다.

매개 변수 model: 이 콘텐츠 항목에 대해 모델링된 정의입니다.

속성

application: 항목이 속할 응용 프로그램 개체를 가져옵니다. 형식: msls.application.

bindingPath: "데이터" 속성(소스)과 "값" 속성(대상) 간의 바인딩 경로를 가져옵니다. 형식: String.

예제:

// Adds a div element each time the value of ValueControl1 content item changes.
myapp.EditTable1Item.ChangeNotesControl_render = function (element, contentItem) {
    var valueControlContentItem = contentItem.screen.findContentItem("ValueControl1");
    contentItem.dataBind(valueControlContentItem.bindingPath, function (newValue) {
        $(element).append($("<div> Value of control changed at " + msls.relativeDates.now().toString() + "</div>"));
    });
};

children: 이 콘텐츠 항목이 소유한 자식 콘텐츠 항목을 가져옵니다. 예를 들어 의 자식 항목으로는 탭이 활성화되어 있는 동안 표시되는 모든 컨트롤이 해당됩니다. 형식: Object 배열.

choiceList: 이 콘텐츠 항목의 값에 대한 정적 선택 사항 목록을 가져옵니다(해당되는 경우). 형식: 배열.

예제:

myapp.Screen1.created = function (screen) {
    var myDropDown = screen.findContentItem("Status");
    var myCustomChoices = new Array({ value: "Active", stringValue: "Active" }, { value: "Resolved", stringValue: "Resolved" });

    myDropDown.choiceList = myCustomChoices;
    myDropDown.dispatchChange("choiceList");
    myDropDown.dispatchChange("value");
};

choicesSource: 이 콘텐츠 항목의 값에 대한 동적 선택 사항 집합을 제공하는 가시적 컬렉션을 가져오거나 설정합니다. 형식: msls.VisualCollection.

참고

이 속성은 세부 정보 모달 선택 컨트롤에만 적용됩니다.

기본값은 Auto입니다. 런타임 시 컨트롤은 서버의 모든 항목이 포함된 시각적 컬렉션을 동적으로 만듭니다. choicesSource는 쿼리 결과와 같이 더욱 구체적인 시각적 컬렉션으로 업데이트될 수 있습니다. 컨트롤은 성능 상의 이유로 시각적 컬렉션을 한 번만 초기화합니다.

commandItems: 이 콘텐츠 항목이 소유한 명령 콘텐츠 항목을 가져옵니다. 형식: msls.ContentItem 배열.

controlModel: 이 콘텐츠 항목을 시각화하는 컨트롤을 나타내는 모델 항목을 가져옵니다. 형식: Object.

data: detailsvalue 속성 바인딩의 소스 데이터 개체를 가져옵니다. 형식: Object.

description: 이 콘텐츠 항목에 대한 설명을 가져오거나 설정합니다. 형식: String.

details: bindingPath 속성에서 파생된 바인딩 경로를 사용하여, 이 콘텐츠 항목이 나타내는 값에 대한 Details 속성 개체를 가져옵니다. 형식: msls.BusinessObject.Details.Property.

displayError: 컨트롤에 대해 발생한 화면 표시 오류를 가져옵니다(해당되는 경우). 형식: String.

displayName: 이 콘텐츠 항목에 대한 표시 이름을 가져오거나 설정합니다. 형식: String.

heightSizingMode: 이 콘텐츠 항목에 대한 높이 조정 모드를 가져옵니다. 형식: msls.HeightSizingMode(String).

horizontalAlignment: 이 콘텐츠 항목에 대한 가로 맞춤을 가져옵니다. 형식: msls.HorizontalAlignment(String).

isEnabled: 이 콘텐츠 항목의 컨트롤이 활성화되어야 하는지 여부를 나타내는 값을 가져옵니다. 형식: Boolean.

isLoading: 이 콘텐츠 항목의 컨트롤이 로딩 상태에서 표시되어야 하는지 여부를 나타내는 값을 가져옵니다. 형식: Boolean.

isReadOnly: 이 콘텐츠 항목의 컨트롤이 읽기 전용으로 설정되어야 하는지 여부를 나타내는 값을 가져옵니다. 형식: Boolean.

isVisible: 이 콘텐츠 항목의 컨트롤이 표시되어야 하는지 여부를 나타내는 값을 가져오거나 설정합니다. 형식: Boolean.

kind: 이 콘텐츠 항목의 종류를 가져옵니다. 형식: msls.ContentItemKind(String).

예제:

// Adds description help to each content item
myapp.AddEditCustomer.columns_postRender = function (element, contentItem) {
    // Look for content items with type either 'details' (a navigation property) 
    // or 'value' (non-relationship properties) 
    var contentItemTypes = [];
    contentItemTypes.push(msls.ContentItemKind.details);
    contentItemTypes.push(msls.ContentItemKind.value);
    // Find these content items starting from the children of the 'columns' content item 
    var matchingContentItems = findMatchingContentItems(contentItemTypes, contentItem);
    // Find all LABEL elements that are descendants of the parent element rendering the 
    // 'columns' content item 
    var $matchingElements = $(element).find("label");
    $.each($matchingElements, function (index) {
        // Set the LABEL element to float left 
        $(this).css("float", "left");
        // Create a new A element that will display the '?' link 
        var $help = $("<a href='#'>?</a>");
        $help.css({ "cursor": "pointer", "display": "block", "float": "right" });
        var correspondingContentItem = matchingContentItems[index];
        // Add a click event handler to display the content item description 
        $help.on('click', function (e) {
            e.preventDefault();
            contentItem.screen.HelpText = correspondingContentItem.description;
            contentItem.screen.showPopup('Help');
        });
        // Insert the help element as a sibling after the LABEL element 
        $(this).after($help);
    });
}; 
function findMatchingContentItems(arrayOfTypes, parentContentItem) {
    var matches = [];
    // Return an empty array if no children to look at 
    if (parentContentItem.children.length == 0) {
        return matches;
    }
    $.each(parentContentItem.children, function (i, contentItem) {
        $.each(arrayOfTypes, function (j, type) {
            if (contentItem.kind == type) {
                matches.push(contentItem);
            }
        });
        // Check the child's children for matches 
        matches = matches.concat(findMatchingContentItems(arrayOfTypes, contentItem));
    });
    return matches;
};

model: 이 콘텐츠 항목을 나타내는 모델 항목을 가져옵니다. 형식: Object.

name: 이 콘텐츠 항목의 이름을 가져옵니다. 형식: String.

onchange: 이 개체에 대해 식별 가능한 속성의 값이 변경될 때마다 호출되는 변경 이벤트의 처리기를 가져오거나 설정합니다. 형식: Function.

pageKind: 이 콘텐츠 항목의 페이지 종류(None, Popup, Tab)를 가져옵니다. 형식: msls.PageKind(String).

parent: 이 콘텐츠 항목을 소유한 부모 콘텐츠 항목을 가져옵니다. 형식: msls.ContentItem.

properties: 이 콘텐츠 항목의 시각화를 구성하는 데 사용된 컨트롤별 속성 집합을 가져옵니다. 형식: Object.

screen: 이 콘텐츠 항목을 생성한 화면을 가져옵니다. 형식: msls.Screen.

stringValue: value 속성의 문자열 표현을 가져오거나 설정합니다. 화면에 표시될 값을 가져올 경우 value 속성 대신 이 속성을 사용하는 것이 좋습니다. 형식: String.

validationResults: 이 콘텐츠 항목에 대한 현재 유효성 검사 결과 집합을 가져오거나 설정합니다. 형식: msls.ValidationResult 배열.

이 속성에 명시적으로 설정된 모든 결과와 함께, 자동 유효성 검사 또는 validate() 메서드 호출을 통해 추가된 모든 결과가 포함됩니다. 유효성 검사 결과는 사용자가 UI의 속성을 수정하거나 저장을 시도할 때까지는 표시되지 않습니다.

예제:

screen.findContentItem("OrderDate").validationResults = [new msls.ValidationResult(screen.Order.details.properties.OrderDate, "Invalid date")];

value: 이 콘텐츠 항목이 나타내는 값을 가져오거나 설정합니다. 형식: Object.

valueModel: 이 콘텐츠 항목의 값을 나타내는 모델 항목을 가져옵니다. 형식: Object.

widthSizingMode: 이 콘텐츠 항목에 대한 너비 조정 모드를 가져옵니다. 형식: msls.WidthSizingMode(String).

메서드

addChangeListener: 변경 이벤트 수신기를 추가합니다.

addChangeListener(propertyName, listener)

매개 변수 propertyName: 전역 변경 이벤트의 속성 이름 또는 null입니다. 형식: String.

매개 변수 listener: 변경 이벤트가 발생될 때 호출할 함수입니다. 형식: Function.

예제:

myapp.AddEditCustomer.created = function (screen) {
function onPropertyChanged() {
    // Do something.
}
screen.Customer.addChangeListener(
    "Property", onPropertyChanged);

function onEvent() {
    // Do something.
}
screen.Customer.addEventListener(
    "Event", onEvent);

// Clean up when screen is closed.
screen.details.rootContentItem
.handleViewDispose(function () {
    screen.Customer.removeChangeListener(
        "Property", onPropertyChanged);
    screen.Customer.removeEventListener(
        "Event", onEvent);
});
};

dataBind: 바인딩 경로에 의해 식별된 소스에 바인딩합니다(예: value.unitPrice).

dataBind(bindingPath, callback)

매개 변수 bindingPath: 소스의 경로를 나타내는, 마침표 구분 형식의 바인딩 경로입니다. 형식: String.

매개 변수 callback: 소스가 변경될 때 호출되는 함수입니다. 형식: Function.

예제:

myapp.ViewCustomer.Details_postRender = function (element, contentItem) { 
    contentItem.dataBind("screen.Customer.Name", function (value) { 
        contentItem.screen.details.displayName = value; 
    }); 
};

dispatchChange: 속성에 대한 변경 이벤트를 발생시킵니다.

dispatchChange(propertyName)

매개 변수 propertyName: 속성 이름입니다. 형식: String.

예제:

myapp.ViewIncidents.created = function (screen) {
   myapp.activeDataWorkspace.Main
  .Statuses
  .load()
  .then(function onComplete(data) {
      var choice = screen.findContentItem("Status"),
          values = [];
      data.results.forEach(function (status){
          values.push({
              value: status.Id,
              stringValue: status.Title
          });
      });
      choice.choiceList = values;
      choice.dispatchChange("choiceList");
  }, function onError(error) {
      msls.showMessageBox(error, {
          title: "Error loading Statuses from the backend"
      });
  });
}

findItem: 이 콘텐츠 항목부터 시작하여 콘텐츠 항목을 재귀적으로 검색합니다.

findItem(contentItemName)

매개 변수 contentItemName: 콘텐츠 항목의 고유한 이름입니다. 형식: String.

msls.ContentItem 반환: 해당 항목이 검색되면 지정된 이름의 콘텐츠 항목이며 그렇지 않으면 false 값입니다.

handleViewDispose: 뷰 삭제 이벤트에 대한 처리기를 설정합니다.

handleViewDispose(handler)

매개 변수 handler: 이 콘텐츠 항목의 뷰가 삭제될 때 호출되는 함수입니다. 형식: Function.

예제:

myapp.AddEditCustomer.created = function (screen) {
function onPropertyChanged() {
    // Do something.
}
screen.Customer.addChangeListener(
    "Property", onPropertyChanged);

function onEvent() {
    // Do something.
}
screen.Customer.addEventListener(
    "Event", onEvent);

// Clean up when screen is closed.
screen.details.rootContentItem
.handleViewDispose(function () {
    screen.Customer.removeChangeListener(
        "Property", onPropertyChanged);
    screen.Customer.removeEventListener(
        "Event", onEvent);
});
};

hasValidationErrors: 현재 이 콘텐츠 항목에 유효성 검사 오류가 있는지를 나타냅니다.

hasValidationErrors(recursive)

매개 변수 recursive: 자식 콘텐츠 항목도 검사해야 할지 여부를 나타냅니다. 형식: Boolean.

Boolean 반환: 유효성 검사 오류가 있으면 true 그렇지 않으면 false입니다.

예제:

if (screen.findContentItem("name").hasValidationErrors()) {
        screen.findContentItem("name").validationResults = [];
    }

removeChangeListener: 변경 이벤트 수신기를 제거합니다.

removeChangeListener(propertyName, listener)

매개 변수 propertyName: 전역 변경 이벤트의 속성 이름 또는 null입니다. 형식: String.

매개 변수 listener: 제거해야 할 이벤트 수신기입니다. 형식: Function.

예제:

myapp.AddEditCustomer.created = function (screen) {
function onPropertyChanged() {
    // Do something.
}
screen.Customer.addChangeListener(
    "Property", onPropertyChanged);

function onEvent() {
    // Do something.
}
screen.Customer.addEventListener(
    "Event", onEvent);

// Clean up when screen is closed.
screen.details.rootContentItem
.handleViewDispose(function () {
    screen.Customer.removeChangeListener(
        "Property", onPropertyChanged);
    screen.Customer.removeEventListener(
        "Event", onEvent);
});
};

validate: 정의된 유효성 검사 규칙을 value 속성에 대해 실행하고 validationResults 속성의 값을 업데이트합니다.

validate(recursive)

선택적 매개 변수 recursive: 자식 콘텐츠 항목의 유효성도 검사해야 할지 여부를 나타냅니다. true이면 자식 콘텐츠 항목의 validationResults 속성이 업데이트됩니다 형식: Boolean.

msls.ContentItemKind

msls.ContentItemKind

콘텐츠 항목의 종류를 지정합니다.

설명

collection

시각적 컬렉션에 바인딩되는 콘텐츠 항목을 지정합니다.

command

메서드를 호출하는 명령에 바인딩되는 콘텐츠 항목을 지정합니다.

details

엔터티 등의 개체에 바인딩되는 콘텐츠 항목을 지정합니다.

group

다른 콘텐츠 항목이 포함되는 콘텐츠 항목을 지정합니다.

popup

화면 팝업의 루트 콘텐츠 항목을 지정합니다.

screen

화면의 루트 콘텐츠 항목을 지정합니다.

tab

화면 탭의 루트 콘텐츠 항목을 지정합니다.

value

숫자, 날짜 또는 문자열 등의 값에 바인딩되는 콘텐츠 항목을 지정합니다.

msls.DataService

msls.DataService(dataWorkspace)

데이터 서비스를 나타냅니다.

선택적 매개 변수 dataWorkspace: 이 데이터 서비스를 소유한 데이터 작업 영역입니다. 형식: msls.DataWorkspace.

멤버

멤버

설명

형식

dataService

이 세부 정보 개체를 소유한 데이터 서비스를 가져옵니다.

msls.DataService

dataWorkspace

이 데이터 서비스를 관리하는 데이터 작업 영역을 가져옵니다(해당되는 경우).

msls.DataWorkspace

details

데이터 서비스에 대한 세부 정보를 나타냅니다.

msls.DataService.Details

hasChanges

데이터 서비스의 변경 여부(즉, 추가, 수정 또는 삭제를 보류 중인 엔터티가 있는지 여부)를 나타내는 값을 가져옵니다.

Boolean

oncontentchange

데이터 서비스가 소유한 엔터티가 변경될 때마다 호출되는 contentchange 이벤트의 처리기를 가져오거나 설정합니다.

Function

owner

이 세부 정보 개체를 소유한 데이터 서비스를 가져옵니다.

msls.DataService

properties

데이터 서비스의 속성 개체 집합을 가져옵니다.

msls.DataService.Details.PropertySet

msls.DataServiceQuery

msls.DataServiceQuery(source, rootUri, queryParameters)

데이터 서비스 쿼리를 나타냅니다.

매개 변수 source: 소스 쿼리 가능 개체입니다.

선택적 매개 변수 rootUri: 루트 데이터 서비스 쿼리(예: 컬렉션 탐색 쿼리)인 경우 루트 요청 URI입니다. 형식: 문자열.

선택적 매개 변수 queryParameters: 해당되는 경우 쿼리 매개 변수입니다(예: 매개 변수가 포함된 쿼리 작업 기반의 화면 쿼리). 형식: String.

msls.DataWorkspace

msls.DataWorkspace()

데이터 작업 영역을 나타냅니다.

멤버

멤버

설명

형식

dataWorkspace

이 세부 정보 개체를 소유한 데이터 작업 영역을 가져옵니다.

msls.DataWorkspace

details

데이터 작업 영역에 대한 세부 정보를 나타냅니다.

msls.DataWorkspace.Details

hasChanges

데이터 작업 영역의 변경 여부(즉, 추가, 수정 또는 삭제를 보류 중인 엔터티가 있는지 여부)를 나타내는 값을 가져옵니다.

Boolean

hasNestedChangeSets

데이터 작업 영역에 중첩 변경 집합이 있는지 나타내는 값을 가져옵니다.

Boolean

NestedChangeSet(owner)

중첩 변경 집합을 나타냅니다.

oncontentchange

이 데이터 서비스 작업 영역에서 소유한 데이터 서비스가 소유한 엔터티가 변경될 때마다 호출되는 contentchange 이벤트의 처리기를 가져오거나 설정합니다.

Function

owner

이 세부 정보 개체를 소유한 데이터 작업 영역을 가져옵니다.

msls.DataWorkspace

properties

데이터 작업 영역의 속성 개체 집합을 가져옵니다.

msls.DataWorkspace.Details.PropertySet

msls.Entity

msls.Entity(entitySet)

엔터티를 나타냅니다.

선택적 매개 변수 entitySet: 이 엔터티를 포함하는 엔터티 집합입니다. 형식: msls.EntitySet.

멤버

멤버

설명

형식

details

엔터티의 세부 정보를 나타냅니다.

msls.Entity.Details

entity

이 세부 정보 개체를 소유한 엔터티를 가져옵니다.

msls.Entity

entitySet

엔터티가 포함된 엔터티 집합을 가져옵니다.

msls.EntitySet

entityState

엔터티의 상태(msls.EntityState에서)를 가져옵니다.

String

hasEdits

엔터티에 편집 사항이 있는지(즉, 엔터티가 추가되어 편집되었는지 또는 수정이나 삭제되었는지) 여부를 나타내는 값을 가져옵니다.

Boolean

owner

이 세부 정보 개체를 소유한 엔터티를 가져옵니다.

msls.Entity

Properties

엔터티의 속성 개체 집합을 가져옵니다.

msls.Entity.Details.PropertySet

msls.EntityCollection

msls.EntityCollection(details, data)

엔터티의 로컬 컬렉션을 나타냅니다.

매개 변수 details: 이 엔터티 컬렉션을 소유한 엔터티의 세부 정보 개체입니다. 형식: msls.Entity.Details.

매개 변수 data: 속성 데이터를 제공하는 개체입니다. 형식: Object.

멤버

멤버

설명

형식

oncollectionchange

컬렉션 변경 이벤트에 대한 처리기를 가져오거나 설정합니다.

Function

msls.EntitySet

msls.EntitySet(dataService, entry)

엔터티 집합을 나타냅니다.

매개 변수 dataService: 이 엔터티 집합을 소유한 데이터 서비스입니다. 형식: msls.DataService.

매개 변수 entry: 엔터티 집합 속성 항목입니다.

멤버

멤버

설명

형식

canDelete

이 엔터티 집합의 엔터티를 삭제할 수 있는지 여부를 나타내는 값을 가져옵니다.

Boolean

canInsert

이 엔터티 집합에 엔터티를 추가할 수 있는지 여부를 나타내는 값을 가져옵니다.

Boolean

canUpdate

이 엔터티 집합의 엔터티를 수정할 수 있는지 여부를 나타내는 값을 가져옵니다.

Boolean

dataService

이 엔터티 집합을 소유한 데이터 서비스를 가져옵니다.

msls.DataService

name

이 엔터티 집합의 이름을 가져옵니다.

String

msls.EntityState

msls.EntityState

엔터티의 상태를 지정합니다.

설명

added

엔터티가 추가됩니다.

deleted

엔터티가 삭제된 것으로 표시됩니다.

discarded

엔터티가 삭제됩니다.

modified

엔터티가 수정됩니다.

unchanged

엔터티가 변경되지 않습니다.

msls.HeightSizingMode

msls.HeightSizingMode

콘텐츠 항목의 높이를 계산하는 방식을 지정합니다.

설명

FitToContent

콘텐츠 항목의 높이가 콘텐츠 높이에 따라 결정되도록 지정합니다.

FixedSize

콘텐츠 항목의 높이가 고정되도록 지정합니다.

StretchToContainer

콘텐츠 항목의 높이가 부모 콘텐츠 항목에서 제공된 높이에 따라 결정되도록 지정합니다.

msls.HorizontalAlignment

msls.HorizontalAlignment

콘텐츠 항목의 가로 맞춤을 지정합니다.

설명

Left

콘텐츠 항목이 왼쪽에 맞춰지도록 지정합니다.

Right

콘텐츠 항목이 오른쪽에 맞춰지도록 지정합니다.

msls.MergeOption

msls.MergeOption

데이터 작업 영역에 로드 중인 엔터티가 데이터 작업 영역의 기존 엔터티와 병합되는 방식을 지정합니다.

설명

appendOnly

데이터 작업 영역에 없는 엔터티가 데이터 작업 영역에 추가됩니다. 엔터티가 데이터 작업 영역에 이미 있다면 엔터티 속성의 현재 값인 원래 값이 데이터 소스 값으로 덮어쓰여지지 않습니다. 이 방식이 기본 병합 옵션입니다.

unchangedOnly

데이터 작업 영역에 없는 엔터티가 데이터 작업 영역에 추가됩니다. 엔터티가 데이터 작업 영역에 이미 있으며 엔터티 상태가 변경되지 않았다면 엔터티 속성의 현재 값인 원래 값이 데이터 소스 값으로 덮어쓰여집니다.

msls.MessageBoxButtons

msls.MessageBoxButtons

메시지 상자에 표시할 단추를 지정합니다.

설명

ok

확인 단추를 지정합니다.

okCancel

확인취소 단추를 지정합니다.

yesNo

아니요 단추를 지정합니다.

yesNoCancel

, 아니요취소 단추를 지정합니다.

msls.MessageBoxResult

msls.MessageBoxResult

메시지 상자에서 선택된 단추를 지정합니다.

설명

cancel

취소 단추가 호출된 것으로 지정합니다.

no

아니요 단추가 호출된 것으로 지정합니다.

ok

확인 단추가 호출된 것으로 지정합니다.

yes

단추가 호출된 것으로 지정합니다.

msls.NavigateBackAction

msls.NavigateBackAction

화면에서 뒤로 단추를 눌러 이동할 때 발생되는 작업을 지정합니다.

설명

cancel

이전 화면의 변경 내용이 취소되는 것으로 지정합니다.

commit

이전 화면의 변경 내용이 데이터 소스에 커밋되는 것으로 지정합니다.

msls.ObjectWithDetails

msls.ObjectWithDetails

details 개체가 포함된 개체를 나타냅니다.

멤버

멤버

설명

형식

details

세부 정보가 있는 개체의 세부 정보를 나타냅니다.

msls.ObjectWithDetails.Details

onchange

이 개체에 대해 식별 가능한 속성의 값이 변경될 때마다 호출되는 변경 이벤트의 처리기를 가져오거나 설정합니다.

Function

owner

이 세부 정보 개체를 소유한 개체를 나타냅니다.

msls.ObjectWithDetails

properties

소유자의 속성에 대한 속성 개체 집합을 가져옵니다.

msls.ObjectWithDetails.Details.PropertySet

msls.PageKind

msls.PageKind

콘텐츠 항목으로 나타내는 페이지의 종류를 지정합니다.

설명

None

콘텐츠 항목이 페이지를 나타내지 않도록 지정합니다.

Popup

콘텐츠 항목이 중첩 경계 옵션을 사용하여 표시되는 팝업을 나타내도록 지정합니다.

Tab

콘텐츠 항목이 화면 탭 모음에 표시되는 탭을 나타내도록 지정합니다.

msls.Screen

Screen(dataWorkspace, modelId, screenParameters)

화면을 나타냅니다.

매개 변수 dataWorkspace: 화면과 연결된 데이터 작업 영역입니다. 형식: msls.DataWorkspace.

매개 변수 modelId: 이 화면을 정의하는 모델 항목의 식별자입니다. 형식: String.

선택적 매개 변수 screenParameters: 화면 매개 변수가 포함된 개체입니다. 형식: Array.

멤버

멤버

설명

형식

dataWorkspace

화면의 데이터를 제공하는 데이터 작업 영역을 가져옵니다.

msls.DataWorkspace

description

화면에 대한 설명을 가져오거나 설정합니다.

String

details

화면에 대한 세부 정보를 나타냅니다.

msls.Screen.Details

displayName

화면에 대한 표시 이름을 가져오거나 설정합니다.

String

owner

이 세부 정보 개체를 소유한 화면을 가져옵니다.

msls.Screen

pages

화면의 탭 및 팝업에 대한 루트 콘텐츠 항목 배열을 가져옵니다.

msls.ContentItem

properties

화면의 속성 개체 집합을 가져옵니다.

msls.Screen.Details.PropertySet

rootContentItem

화면의 루트 콘텐츠 항목을 가져옵니다.

msls.ContentItem

saveChangesTo

화면의 편집 가능한 데이터 서비스 배열을 가져옵니다.

msls.DataService

screen

이 세부 정보 개체를 소유한 화면을 가져옵니다.

msls.Screen

serverErrors

화면이 마지막으로 저장될 때 발생한 서버 유효성 검사 오류를 가져옵니다.

msls.ValidationResult

startPage

화면의 시작 페이지에 대한 루트 콘텐츠 항목을 가져옵니다.

msls.ContentItem

msls.Sequence

msls.Sequence()

시퀀스를 나타냅니다.

멤버

멤버

설명

형식

Array

이 시퀀스를 나타내는 배열을 가져옵니다.

Object

msls.TransitionAnimationLevel

msls.TransitionAnimationLevel

전환 중에 발생하는 애니메이션의 수준을 지정합니다.

설명

Full

전체 전환 애니메이션을 사용합니다.

Simple

프로세서나 전력이 덜 사용되는 간단한 전환 애니메이션을 사용합니다.

msls.ValidationResult

msls.ValidationResult(property, message)

유효성 검사 결과를 나타냅니다.

매개 변수 property: 유효성 검사 결과와 연결되는 속성입니다. 형식: msls.BusinessObject.Details.Property.

매개 변수 message: 유효성 검사 오류를 설명하는 메시지입니다. 형식: String.

멤버

멤버

설명

형식

message

유효성 검사 오류를 설명하는 메시지를 가져옵니다.

String

property

유효성 검사 오류가 발생된 속성을 가져옵니다.

msls.BusinessObject.Details.Property

msls.VisualCollection

VisualCollection(screenDetails, loader)

화면에서 표시되는 데이터 컬렉션을 나타냅니다.

매개 변수 screenDetails: 화면 컬렉션 속성의 값이 이 컬렉션인 화면 세부 정보 개체입니다. 형식: msls.Screen.Details.

매개 변수 loader: 데이터를 컬렉션에 로드하는 데 사용되는 개체입니다.

멤버

멤버

설명

형식

canLoadMore

이 컬렉션이 데이터 페이지를 더 많이 로드할 수 있는지 여부를 나타내는 값을 가져옵니다.

Boolean

count

이 컬렉션에 현재 포함되어 있는 항목의 개수를 가져옵니다.

Integer

data

이 컬렉션에 현재 포함되어 있는 항목을 가져옵니다.

Array

isLoaded

이 컬렉션에 하나 이상의 데이터 페이지가 로드되어 있는지 여부를 나타내는 값을 가져옵니다.

Boolean

loadError

마지막으로 발생한 로드 오류를 가져오거나 오류가 발생하지 않은 경우 null을 반환합니다.

String

screen

이 컬렉션을 소유한 화면을 가져옵니다.

msls.Screen

selectedItem

현재 선택된 항목을 가져오거나 설정합니다.

msls.Entity

state

이 컬렉션의 현재 상태(msls.VisualCollection.State에서)를 가져옵니다.

String

VisualCollection.State 값:

설명

idle

시각적 컬렉션이 데이터를 로드하고 있지 않은 것으로 지정합니다.

loading

시각적 컬렉션이 데이터를 로드 중인 것으로 지정합니다.

loadingMore

시각적 컬렉션이 더 많은 데이터를 로드 중인 것으로 지정합니다.

msls.WidthSizingMode

msls.WidthSizingMode

콘텐츠 항목의 너비를 계산하는 방식을 지정합니다.

설명

FitToContent

콘텐츠 항목의 너비가 콘텐츠 너비에 따라 결정되도록 지정합니다.

FixedSize

콘텐츠 항목의 너비가 고정되도록 지정합니다.

StretchToContainer

콘텐츠 항목의 너비가 부모 콘텐츠 항목에서 제공된 너비에 따라 결정되도록 지정합니다.

참고 항목

작업

방법: LightSwitch 응용 프로그램용 모바일 클라이언트에서 화면 이벤트 처리

방법: 코드를 사용하여 HTML 화면 수정

기타 리소스

LightSwitch 응용 프로그램용 HTML 클라이언트 화면