2014-11-17 1 views
3

AutoCompleteMode가 AutoCompleteMode.Suggest로 설정되어 있고 내 콘텐츠 원본이 사용자 지정 원본 인 텍스트 상자가 C# Windows Forms 응용 프로그램에 있습니다.C# 텍스트 상자 자동 완성을 사용하여 포함을 기반으로하지 않고 제안을 기반으로 제안 할 수 있습니까?

  • 짐 스미스
  • 앨리스 워커
  • 밥 워커
  • 제레미 스미스

내용 완료 만에 나타납니다

내 콘텐츠 소스는 다음 값으로, 사용자 정의입니다 제안 된 항목이 텍스트 상자의 값으로 시작하는지 확인하여 작업하십시오.

예를 들어

:

text=J 

이 제안 될 것이다 :

  • 짐 스미스
  • 제레미 스미스

그러나,

,181에서 사용자 유형

결과가 없습니다.

어떻게하면 다음과 같은 내용을 완성 할 수 있습니까?

  • 앨리스 워커
  • 밥 워커는

또한, 내 최종 목표는 개인이 쉽게 전자 메일 주소를 입력 시작할 수있는 텍스트 상자를하는 것입니다. 자동 완성 제안의 내용은 이름 + 이메일 주소입니다. 예 :

- Jim Smith <[email protected]> 
- Alice Walker <[email protected]> 
- Bob Walker <[email protected]> 
- Jeremy Smith <[email protected]> 
+0

@juharr 고침 주셔서 감사합니다. 미리보기에서 놓치 셨습니다. – GreenKiwi

+1

[더 유용한 자동 완성 텍스트 상자 컨트롤] (http://www.emoreau.com/Entries/Articles/2012/04/A-more-useful-auto-complete-Textbox-control.aspx) 체크 아웃 –

+1

이 질문에 대한 답변 (같은 질문) : http://stackoverflow.com/questions/1437002/winforms-c-sharp-autocomplete-in-the-middle-of-a-textbox – loopedcode

답변

3

내장 TextBox에서는 불가능합니다.

reference source을 읽으면 자동 완성 기능이 기본 기능인 SHAutoComplete을 호출하여 작업을 수행합니다. 그 하나는 접두사를 접두사 만 않습니다.

이렇게하려면 TextBox의 하위 클래스를 만들고 자신의 제안 기능을 제공하거나 (하나를 구입하거나 오픈 소스를 찾으십시오.)이 작업을 수행해야합니다.

관련 문제