[C#]가계부 만들기 - 수정 이벤트

프로젝트/가계부(1)  2013.02.19 09:00

안녕하세요 명월입니다.


이번 포스팅에서는 수정 이벤트 입니다. 제가 생각하기엔 입력, 삭제, Cancel 이벤트 중 가장 까다롭지 않나 싶습니다.
그러나 프로젝트 자체가 가볍기 때문에 복잡한 로직은 없습니다.


그럼 수정 이벤트를 작성해 보도록 하겠습니다.


수정이벤트에서는 일단 Input 클래스에선 입력 이벤트랑 비슷하겠습니다.
DB에서는 insert 대신 update 를 해서 입력 하면 되겠습니다.


Data 클래스가 조금 까다롭습니다. 먼저 그리드에서는 현재 선택 되어진 데이터를 전달 받아서 수정하고 Total 값을 계산하는 절차로 진행되겠습니다.


Total 계산할 때는 수정전에는 입금 타입이었던것이 출금 타입이 변경된 경우,또 반대의 출금이 -> 입금으로 변경된 경우 까지 생각해야 겠습니다.


입력 클래스의 소스입니다.



먼저 DB로 update를 날리고 전문을 보시면 전의 타입과 전의 가격에 대한 부분도 전문에 타고 보냅니다. 이 이유는 Total에서 계산하기 위함입니다.


다음은 데이터 클래스 부분입니다.



먼저 위에는 DataGrid의 Row 클래스 주소(C++이면 분명 Pointer 주소 값이다.) 받아 와서 수정을 하였습니다.


그리고 밑에는 입금 -> 출금 일때 또는 출금 -> 입금으로 바뀔떄의 계산 식입니다.



자 위에 함수를 사용하여 계산되겠습니다.


그럼 결과 화면 입니다.



마지막 항목의 입금 내역을 출금으로 수정해 보겠습니다.



토탈 내역을 보면 입금 내역이 나오고 출금이 추가 되었습니다. 잔고도 계산 되었습니다.


댓글 0개가 달렸습니다.
댓글쓰기