我已使用datasource属性将一些项目填充到列表框中。现在我需要从列表框中列出的项目为textBox设置AutoCompleteCustomSource。确切地说,ListBox的DataSource和textBox的AutoCompleteCustomSource是相同的。如何在不使用for循环的情况下设置AutoCompleteCustomSource?
。仅限.Net 2.0。不支持LINQ
答案 0 :(得分:1)
AutoCompleteStringCollection
只需string[]
,因此它应该是这样的:
var cc = new AutoCompleteStringCollection();
cc.AddRange(listBox1.Items.Cast<string>().ToArray());
答案 1 :(得分:0)
如果您的ListBox是字符串列表,您应该能够这样做:(未经测试)
textBox.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
textBox.AutoCompleteSource = AutoCompleteSource.CustomSource;
textBox.AutoCompleteCustomSource.AddRange((List<String>)listBox.DataSource);
答案 2 :(得分:0)
这是一个类似的问题和答案似乎是合适的。 autocomplete textbox on listbox
另一个类似问题C# AutoComplete