C# 组合框-自动完成+;免费打字
如果用户正在输入的内容在项目列表中,我希望我的组合框能够启用自动完成,如果它不存在,我希望将它包括在我的列表中 例如: 包含以下项目的组合框:“摇滚、乡村、爵士乐”。 如果用户开始键入“Ro…”,组合框将自动完成“Rock”。但是如果用户键入“Blues”,我想将其添加到我的项目中。所以它就像:“摇滚、乡村、爵士乐、布鲁斯”C# 组合框-自动完成+;免费打字,c#,wpf,combobox,autocomplete,C#,Wpf,Combobox,Autocomplete,如果用户正在输入的内容在项目列表中,我希望我的组合框能够启用自动完成,如果它不存在,我希望将它包括在我的列表中 例如: 包含以下项目的组合框:“摇滚、乡村、爵士乐”。 如果用户开始键入“Ro…”,组合框将自动完成“Rock”。但是如果用户键入“Blues”,我想将其添加到我的项目中。所以它就像:“摇滚、乡村、爵士乐、布鲁斯” 我该怎么做?您可以使用自动完成模式和自动完成源进行自动完成 comboBox1.AutoCompleteMode = AutoCompleteMode.Append; co
我该怎么做?您可以使用自动完成模式和自动完成源进行自动完成
comboBox1.AutoCompleteMode = AutoCompleteMode.Append;
comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems;
或者,在选择组合框后,可以通过Visual Studio中的“属性”面板执行此操作
用于向组合框添加新项目
private void comboBox1_TextChanged(object sender, EventArgs e)
{
if (!comboBox1.Items.Contains(comboBox1.Text))
{
comboBox1.Items.Add(comboBox1.Text);
comboBox1.Items.RemoveAt(comboBox1.Items.Count - 2);
}
}
您可以使用自动完成模式和自动完成源自动完成
comboBox1.AutoCompleteMode = AutoCompleteMode.Append;
comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems;
或者,在选择组合框后,可以通过Visual Studio中的“属性”面板执行此操作
用于向组合框添加新项目
private void comboBox1_TextChanged(object sender, EventArgs e)
{
if (!comboBox1.Items.Contains(comboBox1.Text))
{
comboBox1.Items.Add(comboBox1.Text);
comboBox1.Items.RemoveAt(comboBox1.Items.Count - 2);
}
}
如果我使用MVVM来做这件事,我会从一个组合框开始,并根据需要修改它 如果您在
DevExpress
中使用内置的组合框
,您几乎可以免费获得此功能。只需在下拉列表中填入要自动完成的项目,然后设置以下选项:
- 自动下拉(因此,当您开始键入时,它将自动下拉匹配项列表)
- 按匹配项筛选列表(即下拉列表中唯一与您键入内容匹配的项)
- 部分匹配(即,您键入的内容将过滤下拉列表,在任何地方,甚至在中间都有匹配项)
油门
来执行此操作,请参见:
- 李>
DevExpress
中使用内置的组合框
,您几乎可以免费获得此功能。只需在下拉列表中填入要自动完成的项目,然后设置以下选项:
- 自动下拉(因此,当您开始键入时,它将自动下拉匹配项列表)
- 按匹配项筛选列表(即下拉列表中唯一与您键入内容匹配的项)
- 部分匹配(即,您键入的内容将过滤下拉列表,在任何地方,甚至在中间都有匹配项)
油门
来执行此操作,请参见:
- 李>
DevExpress
没有任何关联,它只是我熟悉的一个。Telerik也是一个非常优秀的图书馆,毫无疑问,他们也有类似的地方。请注意,我与DevExpress
没有任何关联,它只是我熟悉的一个。Telerik也是一个很好的图书馆,毫无疑问他们也有类似的东西。