Microsoft MVP성태의 닷넷 이야기
combobox usercontrol [링크 복사], [링크+제목 복사],
조회: 9496
글쓴 사람
한귀순 (douner001 at hanmail.net)
홈페이지
첨부 파일
 

오늘은 자주 연락드리네요.. ^^

다름이 아니오라, 제가 combobox 를 이용한 user control 을 만들었거든요.
첨에는 bindingsource 랑 연결시키려는 attribute 를 쓰기 전까지는 사용하기에 괜찮았어요.

그런데 bindingsource 랑 연결해서 쓰려고
[LookupBindingProperties("DataSource", "DisplayMember", "ValueMember", "SelectedValue")]

attribute 를 추가시켜줬어요..

문제는 화면에서 조회만 하고, bindingsource.EndEdit() 을 call 한 후,
해당 dataset 의 GetChanges() 를 했는데 변경사항이 존재한다고 뜨네요.. ㅡㅡ;;

combobox 가 첨에 아무것도 없다가 DB 값 조회되서 setting 되는 순간부터 값이 변경되었다고 인식을 하는것 같은데,
이걸 방지할 수 있는 방법 없을까요?

(제가 질문을 좀 복잡하게 쓴거같기도 하네요.. ^^;;)

사실 TextBox 도 만들었는데 여기는 change 되는 부분을 값이 다를 경우에만 change 되라고 코딩해주고 나서는 이런 현상이 사라졌는데...

며칠째 붙잡고 있네요...

답변 주시면 정말정말 감사하겠습니다.

PS. 혹시 저는 지금 WinForm 으로 개발중인데 정말 BindingSource 를 쓰는게 유용한가요?
     조회 후 각 textbox 나 combobox 에 건건이 값 셋팅해주지않는 점은 좋은것 같지만, 나머지는 MSDN 봐도 크게 "아~ 좋겠다." 라는 감이
      안와서요.. ^^

감사합니다.









[최초 등록일: ]
[최종 수정일: 4/4/2007]


비밀번호

댓글 작성자
 



2007-04-05 05시58분
죄송합니다만... 가능한 예제를 구성해서 테스트해봐야 할텐데... 제가 시간이 없어서 그냥... 일단 답변을 드려봅니다.
EndEdit 를 call 했다고 하셨으니, 적어도 그 시점에는 dataset 의 부가 메서드를 불러도 좋다는 뜻으로 해석이 됩니다. 따라서, EditEdit 를 호출하고서, 해당 dataset 의 AcceptChanges 를 같이 호출해 주시는 것은 어떨까요? 그런 경우에, 적어도 이후의 GetChanges 에서는 변경사항이 없다고 판단이 될 것 같습니다.

BindingSource 가 유용하냐는 질문에 대해서는... Entity 클래스를 그대로 화면 UI 에 셋팅해준다는 측면에서 매우 바람직하다고 생각하고 있고요. 또한 그 "건건이 값 셋팅" 하는 작업을 없애준다는 것이 ... 저 같은 게으름꾼에게는 큰 장점으로 다가옵니다. ^^; 하지만, LookupBindingProperties 를 써본적은 없습니다. 그 특성을 쓰시는 것으로 보자면, 한귀순님이 ... 아마도 국내에서는 최초가 아닐까 싶군요. ^^

답변 내용이 상황에 맞을지 걱정되는 군요.
kevin25
2007-04-07 11시38분
[한귀순] 답변감사합니다.

잘 쉬고계시나요? ^^
AcceptChanges 도 다 불러줬는데 안되더라구요...

몇주동안 고민했는데, DataSourceUpdateMode 와 Binding.WriteValue 로 오늘 드뎌 해결은 했습니다.

BindingSource 를 쓰는걸 유용하게 생각하니 다행이네요. ^^

감사합니다.
주말 잘보내세요~~
[guest]

... 31  32  33  34  35  36  37  38  39  40  [41]  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4829윤현수4/26/201714836System.Text.Encoding 질문 [1]
4828jaem...4/20/201711077시스템 종료시 block 함수 xp 지원가능한 방법 질문 [2]
4827ds4/13/201713068매서드 정의로 이동시 [메타데이터에서]에서 라고 나오는 것은 뭔가요? [1]
4826김솔지4/11/201710344CxImage 문자 출력 [1]
4825플메4/10/201710743덱스트 업로드 하는데 구성요소 서비스에 엑셀이 안뜨네요..ㅜㅜ [1]파일 다운로드1
4824김상경4/9/201710123win7에서 vb6.0을 이용해서 프로그램을 만들었습니다.(제가 만든건 아니고 옆 동료가 만들었습니다.) [1]파일 다운로드1
4823조상현3/28/201711170windows event log 에 대한 정보는 어디서 얻을 수 있을까요? [1]
4822부우3/24/201712821글수정이 안되어 다시올려드립니다ㅠ [12]파일 다운로드2
4821부우3/22/201726507파일이나 어셈블리 중 하나를 로드에러 좀 봐주세요 [9]파일 다운로드1
4820듀이3/20/201711175오차 없이 동시에 명령을 보내게 가능한가요? [2]파일 다운로드1
4819popo3/20/201712483C# sslstream 사용시 Cipher List 설정 [3]
4818부우3/16/201721441DllImport 사용시 진입점을 찾을수 없습니다 [2]
4817yun3/15/201710744서피스프로4의 HYPER-V로 윈도우7을 깔았는데... [1]
4816부우3/15/201713488C++ DLL함수 사용 질문드립니다 [10]
4815김지용3/14/20179555.net core linux 오류 [2]
4814김솔지3/13/201710623인쇄 시 , 출력화면을 이미지 파일로 저장하고 싶습니다. [1]파일 다운로드1
4813spow...3/8/201712177멀티 스레드 환경에서 처리하여야 할 목록을 효율적으로 사용하는 기법 질문 드립니다 [2]
4812popo2/23/201712244.NET Window ClassName 변경 질문 드립니다. [1]
4809힘찬도약2/15/201715302C# 가상 시리얼 [4]
4808이길용2/9/201713995WCF 외부 접속 관련해서 질문드립니다ㅠ [1]
4807헬조선식...2/8/201720623WPF의 속도에 대해서 궁금합니다. [3]
4803헬조선식...2/7/201714027WPF로 메신져 메세지 박스 구현 문의 [2]
4802spow...2/6/201711043특정 범위의 값을 다른 값으로 치환하는 메소드를 만들어야 할 때 가장 빠른 방법은? [7]
4804spow...2/7/201710917    답변글 [답변]: 특정 범위의 값을 다른 값으로 치환하는 메소드를 만들어야 할 때 가장 빠른 방법은?
4805spow...2/7/201710632    답변글 [답변]: 특정 범위의 값을 다른 값으로 치환하는 메소드를 만들어야 할 때 가장 빠른 방법은? (글삭제가 안돼 재첨부합니다)파일 다운로드1
4801spow...2/3/201710513C#의 참조 동작관련하여 아이디어 문의 드립니다 [4]
... 31  32  33  34  35  36  37  38  39  40  [41]  42  43  44  45  ...