2016-11-02 7 views
1

자동 완성 문자열 컬렉션을 만들고 검색 텍스트 상자에 런타임에 편집 (컬렉션에 텍스트 추가)하고 싶습니다. 이 목록을 목록 상자에 나열하십시오. 그러나이 컬렉션은 응용 프로그램 설정에 저장해야하며 응용 프로그램을 다시 시작할 때 복원해야합니다. 내가 어떻게 해 ? 나는 System.Windows.Forms.AutoCompleteStringCollection 유형의 설정을 추가하려고 시도했다. 프로젝트 설정의 자동 완성 소스

나는

string newsuggestion = textBox1.Text; 
Settings.Default.derslistesi.Add(newsuggestion); 

는 "derslistesi"내 응용 프로그램 설정에서 System.Windows.Forms.AutoCompleteStringCollection 설정의 이름을 사용했다. 이것은 작동하지 않았다. 런타임에 컬렉션 멤버를 편집 할 수 없습니다.

설정 페이지에서 수동으로 해당 컬렉션에 구성원을 추가하려고하면 "생성자 유형"System.String "not found"라는 오류가 나타납니다.

답변

0

System.Collections.Specialized.StringCollection 유형 설정 속성을 정의하고 이름을 MyProperty과 같이 지정할 수 있습니다. 디자이너를 사용하여 값을 추가 할 수도 있습니다.

런타임에 컬렉션에 값을 추가하려면 :

Properties.Settings.Default.MyProperty.Add("Some Value"); 
Properties.Settings.Default.Save(); 

이 텍스트 상자 자동 완성 소스로 값을 설정하려면 :

var source = new AutoCompleteStringCollection(); 
source.AddRange(Properties.Settings.Default.MyProperty.Cast<string>().ToArray()); 
textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; 
textBox1.AutoCompleteCustomSource = source ; 
+0

그것을 해결하는! 다시 감사합니다 ! – Bora