플인싸 님, 안녕하세요.
그레이프시티입니다.
먼저 댓글로 문의하신 두 가지 내용에 대하여 안내드립니다.
1) 소수점 이하 마지막 숫자가 0일경우 노출을 하지 않는 방법 (예) 0.10 -> 0.1)
말씀해주신 내용으로 미루어보아, 현재 셀 타입을 NumberCellType으로 설정하여 사용하고 계신 것으로 예상됩니다.
이 경우, "FixedPoint" 속성 값을 false로 설정하여, 소수점 끝자리가 0일 경우 표시하지 0을 노출하지 않을 수 있습니다.
FixedPoint 속성은, 고정 소수점 숫자 표시를 위해 숫자의 소수 부분에 0을 자리 표시자로 표시할지 여부를 결정할 때 사용됩니다. 이 속성값을 0으로 설정하면, 소수점 이하 숫자 끝자리가 0일 때 이를 노출하지 않습니다.
FarPoint.Win.Spread.CellType.NumberCellType number = new FarPoint.Win.Spread.CellType.NumberCellType();
number.DecimalPlaces = 2;
number.FixedPoint = false;
fpSpread1.ActiveSheet.Columns[0].CellType = number;
2) 데이터 바인딩 시 소수점 이하 자리 수 설정 방법(소수점 3자리까지 입력)
데이터 바인딩 후 해당 셀의 셀 타입을 NumberCellType으로 설정하고, DecimalPlaces 속성 값을 원하시는 자리수로 설정하여 소수점 자리수를 조절하실 수 있습니다.
아래 샘플 코드를 개발 시 참고 부탁드립니다.
// 샘플 데이터 테이블 생성
DataTable dt = new DataTable("RealNumber");
dt.Columns.Add("실수", typeof(float));
dt.Rows.Add(new Object[] { 1 });
dt.Rows.Add(new Object[] { 1.0 });
dt.Rows.Add(new Object[] { 1.10 });
dt.Rows.Add(new Object[] { 2.12 });
dt.Rows.Add(new Object[] { 2.123 });
dt.Rows.Add(new Object[] { 0.1234 });
// 데이터 바인딩
fpSpread1.ActiveSheet.DataSource = dt;
// 셀 타입 설정
FarPoint.Win.Spread.CellType.NumberCellType number = new FarPoint.Win.Spread.CellType.NumberCellType();
number.DecimalPlaces = 3;
number.FixedPoint = false;
fpSpread1.ActiveSheet.Columns[0].CellType = number;
다른 궁금한 점이 생기면, 문의 주시기 바랍니다.
감사합니다.
그레이프시티 드림