4 validation combobox wpf-controls
我们正在使用 Wpf Combobox 来允许用户执行以下操作:1) 通过输入前几个字符来选择项目 2) 通过过滤列表自动完成条目 3) 建议第一个项目以匹配键入的字母作为选定项物品
挑战在于处理用户输入不在列表中的字符时的场景。这应该表明用户犯了错误或想要输入新项目。
Combobox 绑定到自定义类型,并且它们具有与使用选择填充的属性关联的验证规则。我们无法确定如何识别用户何时输入了 NOT IN THE LIST 的条目并将绑定属性设置为将触发验证的无效值。
当用户输入不代表列表中项目的字符串时,selecteditem 变为空。由于 selecteditem 为 null,因此 WPF 无法识别绑定到表单数据上下文对象的属性路径,因此绑定失败。然后,业务对象保留先前设置的任何值,并且不会获得新值。
现在我花了半个小时研究类似的问题,答案很简单:评估ComboBox的SelectedItem和Text属性。null如果用户未从列表中选择值,则所选项目将为;在这种情况下,文本将包含用户的输入。根据您的需要,您可以使用绑定到一个或两个属性,或者在后面的代码中评估它们。
| 归档时间: |
|
| 查看次数: |
2157 次 |
| 最近记录: |