2016-11-02 24 views
1

我想在運行時創建一個自動完成的字符串集合並對其進行編輯(爲收集添加更多文本)以獲取搜索文本框。並將其列入列表框中。但是這個集合應該存儲在應用程序設置中,並在我重新啓動應用程序時進行恢復。我該怎麼做 ?我嘗試添加一個System.Windows.Forms.AutoCompleteStringCollection類型的設置。項目設置中的自動完成源

我用

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

「derslistesi」 在我的應用程序設置的System.Windows.Forms.AutoCompleteStringCollection設置的名稱。這沒有奏效。我無法在運行時編輯集合成員。

當我嘗試在設置頁面上手動添加一個成員到該集合,我得到一個錯誤,說「構造函數的類型」System.String「找不到」。

回答

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

相關問題