如何强制用户将建议的条目带入ComboBox?我希望用户从ComboBox中选择一个值。必须在用户的文本输入中建议项目。我是否必须使用事件来强制System.Windows.Forms.ComboBox包含来自它自己的数据源的值?示例:必须向用户建议条目...如果我写“CO”,组合应该建议“CONGO”和“COLOMBIA”,但用户只能输入其中一个值。用户不应引入“COfdfgdfg”或任何随机字符串。谢谢!你必须使用combobox.autocompletemode来获取名称liekCongo,当用户输入像“CO”会议这样的文本时,你可以将你自己的数据源更改为comboBox1.AutoCompleteSourcethis.comboBox1.AutoCompleteMode=System.Windows.Forms.AutoCompleteMode.Suggest;this.comboBox1.AutoCompleteSource=System.Windows.Forms.AutoCompleteSource.ListItems;this.comboBox1.DropDownStyle=System.Windows.Forms.ComboBoxStyle.DropDownList;this.comboBox1.FormattingEnabled=true;this.comboBox1.Location=新系统。Drawing.Point(113,192);this.comboBox1.Name="comboBox1";this.comboBox1.Size=newSystem.Drawing.Size(121,20);然后用覆盖ToString方法的对象填充组合框项目源公共类POCLRO{publicintID{get;放;}公共字符串名称{得到;放;}publicoverridestringToString(){returnName;编辑:您必须验证用户在组合框中输入的文本,如果用户选择自动完成模式建议的下拉菜单,验证返回true否则为false...执行以下操作...为组合框创建一个KeyDown事件处理程序并检查Enter键。请注意,在用户按下回车键后,组合框中的文本被选中(就像选中一样,就好像您正在执行剪切或复制操作一样)并且焦点保留在组合框中。如果按下输入,将调用验证函数,如果输入的值等于数据库中存储的名称,它将执行您认为必要的任何操作......您可以在Leave事件中调用相同的函数处理程序以防止用户在进行有效选择之前离开组合框。privatevoidComboBox_KeyDown(objectsender,KeyEventArgse){if(e.KeyCode==Keys.Enter){ValidateSelection();}}privateboolvalidation(){//在这里做验证}privatevoidComboBox_Leave(objectsender,EventArgse){if(!ValidateSelection()){ComboBox.Focus();}}设置combobox的样式为ComboBoxStyle.DropDownList以上是C#学习教程:如何强制用户将建议项带入ComboBox?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
