2009-07-20 2 views
0

저는 데이터 프로젝트의 일부인 강력한 형식의 데이터 집합의 열에 바인딩되는 데이터 격자, 목록 및 텍스트 상자를 사용하는 winform 응용 프로그램을 만듭니다. 디자인 타임에 여분의 열을 한 번 추가 한 다음 저장하면 데이터 바인딩의 테이블 중 하나에 추가 할 때 문제가 발생합니다. 그러면 특정 바인딩 소스에 의존하는 바인딩 소스와 개별 컨트롤이 손실됩니다. 바인딩 된 데이터 원본 정의가 손실되어 손실됩니다.강력하게 형식화 된 데이터 집합 수정이 바인딩을 깨뜨림

내가 수정중인 데이터 테이블은 손실되는 바인딩 소스에서 사용되는 테이블과 아무런 관계가 없습니다.

이것이 나를 일으키는 이유는 내가 ataset을 변경할 때마다 모든 바인딩을 잃어 버리고, 약간의 변경만으로 바인딩을 몇 번이고 다시 정의하는 것이 매우 번거롭다는 것입니다.

도움을 주시면 감사하겠습니다.

답변

0

불행히도 저는 Visual Studio 디자이너에게 이런 버그가 많은 것을 보았습니다 ... 다른 사람이 직접 수정 해 주었으면 합니다만, 수동으로 생성자 또는 OnLoad 함수로 데이터 바인딩을 이동했습니다. :

txtAddress1.DataBindings.Add("Text", myBindingSource, "sAddress1"); 
cmbState.DataBindings.Add("SelectedValue", myBindingSource, "iStateID"); 
///etc... 

그건 내 통제하에 있고 디자이너는 아닙니다. 문제에 대한 해결책은 아니지만 최소한 해결 방법은 있습니다.

+0

감사합니다. 클라이드에게 처음에는 그 사실을 피하고 싶었지만 그런 접근법을 완전히 잊어 버렸습니다. 그것은 내가 원하는 효과를 달성하고 최소한 나를위한 바인딩 관리를위한 Visual Studio의 의존성을 줄입니다. –

관련 문제