2011-10-21 3 views
0

데이터베이스를 호출하여 생성 된 FubarView라는 DataView가 있습니다. 열은 Label, Value, RawName & PhoneNumber입니다. DataView를 생성 후, 나는 ...DataView.Table이 DataView.Sort 규칙을 따르지 않습니다.

내 윈폼 콤보 상자에 바인딩 (DisplayMember 등을 설정 같은 다른 관련이없는 것들 사이에) 다음과 DataView를에 정렬 순서 ...

this.FubarView.Sort = "RawName, Value" 

I 추가

cmbDefault.DataSource = this.FubarView; 

이것은 ComboBox를 사용하여 정렬 된 정보를 의도 한대로 표시하여 완벽하게 작동했습니다. 나중에에 내가 ... 내 콤보 상자에서

phoneNumber = this.FubarView.Table.Rows[cmbDefault.SelectedIndex]["PhoneNumber"] 

을 selectedIndex의를 사용하여 FubarView 볼하려고 할 때 FubarView 가서 다시 값에 의해 자체를 분류하는 경우 그러나 ... 그것은 잘못된 값을 반환합니다! 이걸 어떻게 고치 죠?

+0

프로그램이 Wpf 또는 WinForms를 사용하고 있습니까? – Fischermaen

답변

0

실제 테이블이 아닌 테이블에서 뷰를 정렬하기 때문입니다. 그래서 Table trough DataView.Table에 액세스하면 원래 데이터를 얻을 수 있습니다.

정렬 된 행에 액세스하려면 DataView를 통해 액세스해야합니다.

+0

감사합니다. 실제로 응답을 찾지 못했습니다. (8 시간 기다려야합니다.) phoneNumber = this.FubarView [cmbDefault.SelectedIndex] .Row [ "PhoneNumber"] – Heliac

0

색인과 함께 작동하지 않을 것이므로 대신 ID를 사용합니다.

+0

아니요, 위의 설명을 참조하십시오. – Heliac

관련 문제