2009-03-04 7 views
0

두 개의 DataGridView가 BindingSources 및 TableAdapaters를 통해 기본 DataSource에 바인딩되었습니다.BindingSource 및 DataGridView의

두 모델이 있습니다. 문자열 및 테이블. 테이블 -> [id, handle, description] 문자열 -> [id, handle, table_id]

그래서 테이블과 문자열 사이에는 many-to-one이 있습니다.

"문자열"DataGridView의 내용을 필터링하기 위해 "테이블"DataGridView를 선택하는 가장 쉬운 방법은 무엇입니까?

"문자열"의 데이터 소스를 이해합니다. DataGridView는 "테이블"DataGridView의 바인딩 소스로 설정할 수 있지만 여러 선택을 지원하지 않습니다.

"테이블"DataGridView의 선택이 변경되면 선택한 행을 반복하고 "문자열"DataGridView에 대한 문자열 기반 필터를 작성하지만 느리고 지저분합니다.

누구나 더 좋은 방법을 알고 계십니까?

답변

1

속도가 느려지는 코드에 다른 문제가있을 수 있습니다.

지저분한 점은 일반적으로 DataGridView를 통해 확장 목록의 요소 목록을 쉽게 가져올 수있는 코드를 이동한다는 것입니다. 내장형/단순 형은 단일 선택입니다.

0

각 테이블마다 서로 다른 두 BindingSources를 사용할 수 있습니다. 또는 BindingSource를 전혀 사용하지 않고 데이터만으로 첫 번째 표를 채울 수 있습니다. 그런 다음 DataGridView의 SelectionChanged 이벤트에 반응하여 테이블 2의 BindingSource에 필터를 설정할 수 있습니다.

새로운 방법을 직접 찾을 수 있습니까?