C#如何将文本框建议列表添加到列表中?
例如说我同意textBox1.AutoCompleteSource = AutoCompleteSource.FileSystemDirectories
要么
textBox1.AutoCompleteSource = AutoCompleteSource.RecentlyUsedList
和textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
我在文本框的弹出建议窗口中收到建议,但是我可以在列表中检索这些建议吗?
最佳答案
您将需要通过以下方式设置TextBox
:
AutoCompleteStringCollection source = new AutoCompleteStringCollection();
// Add each item to the collection
source.Add("some string");
TextBox textBox = new TextBox();
textBox.AutoCompleteSource = AutoCompleteSource.CustomSource;
textBox.AutoCompleteCustomSource = source;
然后,您可以通过执行以下操作在其他任何地方访问这些项目:
foreach(string item in textBox.AutoCompleteCustomSource)
{
Console.WriteLine(item);
}
或者,根据需要,现在将textBox.AutoCompleteSource定义为实现
IList
,ICollection
和IEnumerable
的类。因此,您可以使用任何可访问List
,Collection
或Enumeration
的方法。由你决定。为了总结下面的评论,要访问除
CustomSource
以外的其他内容的自动完成项列表,您可能需要连接Windows API,或者使用反射(尽管不太可能,Windows API可能是最有可能工作)。关于c# - C#如何将文本框建议列表添加到list <string>中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37092814/