onGridFilterDialogClosed

public event EventHandler onGridFilterDialogClosed;

필터 다이얼로그 닫음 이벤트

  • 상세설명
  • 예제

mObjDataGrid = document.getElementById("slDataGrid").Content.EntryPoint;
var arrFilterData = ${filterData};
mObjDataGrid.setFilterData(arrFilterData);
mObjDataGrid.onGridFilterDialogClosed = onGridFilterDialogClosedHandler;	

function onGridFilterDialogClosedHandler(objSender, objEvent)
{
	alert(objEvent.getFilterData());	// 모리아에서 수신받은 필터정보
}

filterView

public void filterView()

그리드 필터 다이얼로그를 Open한다.

  • 파라미터
  • 리턴값
    • 상세설명
    • 예제
    if(mObjDataGrid != null) mObjDataGrid.filterView();
    

    addRowDefaultData

    public int addRowDefaultData(ScriptObject objData)
    

    데이터그리드에 Row를 추가한다. 추가시에 파라미터로 기본값을 설정할수 있다. (서버에는 반영하지 않는다.)

    • 파라미터

    ScriptObject objData JSON으로 만들어진 OBJECT

    • 리턴값

    임시 Row 키

    • 상세설명
    • 예제
    mObjDataGrid = document.getElementById("slDataGrid").Content.EntryPoint;
    var arrDefaultData = [{"corpId": "moram", "corpName": "모람" }];
    var intRowKeyNo = mObjDataGrid.addRowDefaultData(arrDefaultData);
    

    데이터그리드 컬럼의 autoIncrement 속성

    데이터 그리드 컬럼에 autoIncrement 속성을 true 로 주게 되면

    <dataGridColumn id='seq' headerText='순번'   width='100' dataType='string' controlType='text' autoIncrement='true'/>

     

    데이터베이스가 오라클일 경우

    서버에서는  INSERT시에 해당필드가  "SEQ_"+ 테이블명 +".NEXTVAL" 으로 대체됩니다.

    따라서 autoIncrement 를 쓰시려면 해당 시퀀스를 먼저 만들어야 합니다.

    dataGridColumn의 이해

    dataGridColumn은 그리드를 표현하기 위한 레이아웃으로 아래와 같이 표현된다.

    
    
    
    
    
    
    
    

    간단히 해당 항목별로 살펴보면 다음과 같다.
    – id : 데이터컬럼의 ID이면서 DataField에 해당
    – headerText : 데이터 그리드의 헤더에 들어갈 문자열
    – width : 데이터컬럼의 Width, Width가 0일 경우 그리드상에서는 hidden으로 된다.
    – dataType : 데이터의 형식으로 다음과 같은 형식을 사용할수 있다.
    1) string
    2) datetime
    3) int
    4) bool
    5) boolyn : yes 또는 no 와 같은 타입

    – controlType : 데이터그리드칼럼의 형식으로 다음과 같은 형식을 사용할수 있다.
    1) checkbox : 체크박스
    2) combo : 콤보박스
    3) date : 날자형
    4) text : 문자형
    5) button : 버튼형
    6) imgbutton : 이미지버튼
    7) image : 이미지
    – controlWidth/controlHeight : button 타입인 경우 그리드 컬럼에 width와 height를 입력하여 적당한 크기로 조절가능하다.
    – controlText : button 타입인 버튼의 명칭으로 쓰인다.
    – imageUrl: controlType이 imgbutton 또는 image 인경우 이미지의 url을 설정할수 있다.
    – format : controlType이 date인 경우 format=’yyyy-MM-dd HH:mm:ss’와 같이 설정할수 있다.
    – controlData : controlType이 combo 인 경우 해당 콤보의 데이터들의 집합이다. 데이터형태은 JSON이다.
    – controlKey : controlType이 combo 인 경우 JSON 데이터에서 키값이 어떤것인지를 설정하기 위한 필드이다.

    getRowKeyNoFromIndex

    public int getRowKeyNoFromIndex(int intIndex);
    

    인덱스로 부터 현재 RowKeyNo를 구한다.

    • 파라미터

    int intIndex 인덱스

    • 리턴값

    RowKeyNo

    • 상세설명
    • 예제
    mObjDataGrid = document.getElementById("slDataGrid").Content.EntryPoint;
    var intRowKeyNo = mObjDataGrid.getRowKeyNoFromIndex(1);
    

    exportGrid

    public void exportGrid()

    – 내용 : 데이터그리드의 데이터를 Excel, CSV, xml 파일로 Export 한다.

    – 파라미터 :

    – 리턴값 :

    – 상세설명 :

    Silverlight에서 액셀 파일을 저장하기 위해 쓰는 SaveFileDialog 메소드는 보안상의 이유로 button 클릭시만 사용할수 있다. 따라서 항상

    아래와 같은 Confirm메시지박스가 뜨고, Yes또는 OK 또는 확인 시에만 저장가능하도록 되어있다.

     

     

    – 예제 :

    		function doExport()
    		{
    			if(mObjDataGrid != null) mObjDataGrid.exportGrid();
    		}
    						
    

    onColumnUpdated

    public event EventHandler onColumnUpdated;
    

    컬럼이 업데이트 되었을때 발생하는 이벤트

    • 상세설명
    • 예제
    
    mObjDataGrid = document.getElementById("slDataGrid").Content.EntryPoint;
    mObjDataGrid.onColumnUpdated = onCoumnUpdatedHandler;
    
    function onCoumnUpdatedHandler(objSender, objEvent)
    {
    	alert(objEvent.ColumnId +","+ objEvent.getRowIndex());
    }
    

    onSelectionChanged

    public event EventHandler onSelectionChanged;
    

    그리드에서 Row 선택이 바뀔때 발생하는 이벤트

    • 상세설명
    • 예제
    
    mObjDataGrid = document.getElementById("slDataGrid").Content.EntryPoint;
    mObjDataGrid.onSelectionChanged = onSelectionChangedHandler;
    
    function onSelectionChangedHandler(objSender, objEvent)
    {
    	var intRowKeyNo = objEvent.getRowKeyNo();
    	alert(intRowKeyNo);
    }
    

    onSavePostCompleted

    public event EventHandler onSavePostCompleted;
    

    데이터 저장 전송 완료 이벤트(WCF/Restful 전용)

    • 상세설명
    • 예제
    function doSavePost()
    {
    	var objDataGrid = document.getElementById("slDataGrid").Content.EntryPoint;
    	if (doDataValidate(objDataGrid))
    	{
    		objDataGrid.savePost();
    		objDataGrid.onSavePostCompleted = onSaveCompletedHandler;
    	}
    }
    
    function onSaveCompletedHandler(objSender, objEvent)
    {
    	if (objEvent.ReturnCode == 1)
    	{
    	    alert("성공적으로 저장되었습니다.");
    	}
    	else
    	{
    	    alert("저장에 실패하였습니다.");
    	}
    }