2010-04-05 5 views
0

이름 집합 (첫 번째, 마지막, 인사말)이 있으며 사용자가 WinForms를 사용하여 단일 이름을 선택할 수있는 컨트롤이 필요합니다. ComboBox는 ~ 20 개의 이름이 있으면 제대로 작동하지만 100 개 이상의 이름이 있으면 잘 작동하지 않습니다.WinForms 이름 선택기

누구든지 이름 선택기를 추천 할 수 있습니까? 아마도 사용자 정의 할 수있는 주소록 컨트롤일까요? 나 자신을 쓰는 것은 그리 어렵지 않지만 발명 할 다른 바퀴가있다.

+0

콤보 상자에 대한 가장 큰 불만은 무엇입니까? 페이징이 없기 때문입니까? 당신이 제대로 검색 할 수 없습니까? –

답변

1

기능 요청과 비슷한 답변을드립니다. :-) Google의 자동 완성 기능과 유사한 동작을 구현하면 매우 쉽게 사용할 수 있습니다. foreach 문자를 삽입하면 삽입 된 문자열과 일치하는 이름 만있는 창이 나타납니다.
구현하기가 그리 어렵지는 않겠지 만 미안하지만 조언 만 드릴 수는 없습니다.

1

나는 Maurizio에 동의합니다. 그의 대답에 추가하려면 :

정확하게 이것을하는 가장 일반적으로 사용되는 인터페이스는 전자 메일 클라이언트에서 사용자가 입력 할 때 이름 (및/또는 전자 메일 주소)을 자동 완성합니다. Thunderbird는 좋은 예입니다. 대개 일치하는 항목이 하나있는 경우 자동 완료되거나 선택할 수있는 자동 완료 드롭 다운 목록이 표시됩니다. 또한 필드 옆에있는 버튼을 사용하면 주소록을 목록으로 탐색 할 수 있습니다.

또한 가장 유용한 방법으로 사용할 수있는 자동 완성을 필터링하는 것이 좋습니다. "wi"를 입력하면 "[WI] lson, John", "Amery, [WI] lliam"및 "[I] ving, [W] alter"와 같은 이름으로 필터링하여 쉽게 처음과 성을 비롯하여 이니셜로 사람을 찾습니다.

+0

기존 컨트롤을 사용할 수 있습니까? 이것이 일반적인 요구 사항이기 때문에 바퀴를 다시 발명하는 것이 옳지 않은 것처럼 보입니다. 이것은 문제의 일부이기도합니다. – liang

+0

몇 가지 .net 텍스트 입력 컨트롤을 사용하면 자동 완성 목록을 제공 할 수 있으며이 경우 자동 완성 목록이 제공됩니다. 더 포괄적 인 옵션을 제공하는 타사 옵션이 있다는 데는 의심의 여지가 없습니다. 하지만 이런 종류의 UI 기능은 재미있게 작성되었습니다. –