본문 바로가기
C#

INFRAGISTICS Windows Forms Grid - AfterRowUpdate Event

by 따봉이 2020. 11. 2.
728x90
반응형

Infragistics 의 Grid에서

변경 된 데이터가 있을 경우 이벤트가 실행되는 코드 이다. 

행이 업데이트 된 후에 발생. 즉, 해당 셀에 대한 변경 사항이 실제로 데이터 원본에 커밋.

using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinGrid;
using System.Diagnostics;

private void ultraGrid1_AfterRowUpdate(object sender, Infragistics.Win.UltraWinGrid.RowEventArgs e)
{
   // Infragistics.Win.UltraWinGrid.RowEventArgs e --> 이벤트 발생한 ROW
   
	// AfterRowUpdate gets called after a row has been updated by the UltraGrid.

	if ( this.ultraGrid1.DataSource is DataSet )
	{
       //this.ultraGrid1.DisplayLayout.Bands[0]  --> 비교할 대상, 
       //뜻 : 이벤트발생한 ROW 비교할 대상이면~
		if ( e.Row.Band == this.ultraGrid1.DisplayLayout.Bands[0] )
		{
			DataRowView drv = (DataRowView)e.Row.ListObject;	

			DataRow dr = drv.Row;

			Debug.WriteLine( "Row state of the data row sould be modified: " + dr.RowState.ToString( ) );
		}
	}

}

 인수 속성 설정에 사용될 수있는 UltraGridRow 개체에 대한 참조를 반환하고, 갱신 된 행의 메소드 호출한다. 이 참조를 사용하여 반환 된 행의 속성 또는 메서드에 액세스 할 수 있습니다.

이 이벤트는 행이 업데이트 될 때 생성됩니다. 즉, 해당 셀의 변경 사항이 실제로 데이터 소스에 커밋됨을 의미합니다. 행이 포커스를 잃을 때 반드시 그런 것은 아닙니다. 데이터 소스에서 사용하는 레코드 잠금 유형 및 UpdateMode 속성 값과 같은 다양한 요소 가 업데이트 발생시기에 영향을 미칠 수 있기 때문입니다. BeforeCellUpdate의 셀이 새로운 값을 수용 할 때 이벤트가 생성된다.

사용자가 셀을 변경하지 못하도록하려면 AllowUpdate 속성을 2 (AllowUpdateNo)로 설정합니다 . Value 속성 을 설정하여 셀의 값을 프로그래밍 방식으로 변경할 수 있습니다 .

행은 Update 메서드 를 호출하여 프로그래밍 방식으로 업데이트 할 수 있습니다 .

행이 업데이트되기 전에 발생 하는 BeforeRowUpdate 이벤트는이 이벤트 전에 생성됩니다.

데이터 소스에 대한 변경 사항을 커밋하는 동안 오류가 발생하면 Error 이벤트가 생성됩니다.

728x90
반응형

댓글