【发布时间】:2013-11-29 17:57:16
【问题描述】:
我正在使用 .NET Framework 4.0 来构建我的应用程序。
我有一个组合框,我想在其中关闭组合框的建议附加模式。相反,我想要仅建议模式。
在用户询问关闭自动完成功能的许多问题中,我得到了相同的答案。即将 IsTextSearchEnabled 设置为 False。
当 IsTextSearchEnabled = True 时
当 IsTextSearchEnabled = False 时
我想要的是:
当用户在组合框上按 Enter 键时,我希望将项目附加到组合框的文本框中。
这在 WPF 中是否可行?
【问题讨论】:
-
有可能。收听 TextBox 的 TextChanged,每当 Text 不等于您输入的文本时,只需将其替换为您输入的文本即可。这就是您将如何仅将文本保留在 TextBox 中的方式。虽然当按下回车时,然后将 SelectedItem 放在 TextBox 中。
-
收听 TextBox 的 TextChanged 是什么意思,每当文本不等于您输入的文本时,只需将其替换为您输入的文本?能给我一个演示示例吗?
-
是的,我会给你一个演示。我的意思是它是您输入的文本框。当您查看 ComboBox 的 ControlTemplate 时,您将找出文本框的部件名称。然后,您可以从字面上获取 TextBox 的实例并收听 TextChanged 事件。当您开始键入时,组合框将搜索最佳匹配并将您输入的文本替换为最佳匹配文本。为避免这种情况,只需始终将您的文本推送为 TextBox 的当前文本。我就是这么说的。我会在答案中为您发布一个演示。
-
我没有在 ComboBox 上找到任何 TextChanged 事件。
-
我在 ComboBox 上找到了 TextChangedEvent。它是
TextBoxBase.TextChanged = "YourEventHandler"。但我不知道实现。
标签: wpf silverlight xaml combobox