데이터 포맷 설정
GridControl의 데이터 포맷은 Gridview의 CustomColumnDisplayText 이벤트를 이용한다.
숫자형
숫자정보는 아래 코드를 참고한다.
string num = e.Value.ToString();
int intNum;
if (Int32.TryParse(num, out intNum)) //데이터를 int로 변환시도
{
e.DisplayText = string.Format("{0:#,###}", intNum);
}
else
{
e.DisplayText = num;
}
날짜형
날짜정보는 아래 코드를 참고한다.
string strDate = e.Value.ToString();
DateTime dateTime;
try
{
dateTime = DateTime.ParseExact(strDate, "yyyyMMdd", null);
e.DisplayText = dateTime.ToString("yyyy년 MM월 dd일");
}
catch
{
e.DisplayText = strDate;
}
이벤트 작성
위 코드를 이벤트에 작성 하여 각 컬럼별 DisplayText를 변경 할 수 있다.
Switch문을 이용해 두가지를 동시에 적용한다.(If문을 사용해도된다.)
private void gridView1_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
switch (e.Column.FieldName)
{
case "Stock":
string num = e.Value.ToString();
int intNum;
if (Int32.TryParse(num, out intNum))
{
e.DisplayText = string.Format("{0:#,###}", intNum);
}
else
{
e.DisplayText = num;
}
break;
case "Date":
string strDate = e.Value.ToString();
DateTime dateTime;
try
{
dateTime = DateTime.ParseExact(strDate, "yyyyMMdd", null);
e.DisplayText = dateTime.ToString("yyyy년 MM월 dd일");
}
catch
{
e.DisplayText = strDate;
}
break;
}
}