vba - 访问表单:修复 ComboBox 中的选项
问题描述
在一个表单中有几个 ComboBox,我必须对其进行编辑、删除或替换任何显示的记录。
我尝试在表单加载中添加此属性:
Me!Tipo.LimitToList = True
即使这样,也可以删除 ComboBox 中的选定选项。无法解释这一点。如何认真地在表单中创建一个 ComboBox,用户只能选择它已经存在的内容而不删除或修改它?rio serio donde el usuario sólo puede elegir lo que hay y no puede borrarlo?
解决方案
我不会说西班牙语,所以我希望我不会错过有关您问题的重要信息。
LimitToList
您自己已经找到的属性会阻止用户选择列表中没有的值。因此,每当用户编辑或删除一个值以使结果值与列表的所有元素都不同时,将不接受该选择,并且将通过消息框通知用户这一点。所以你已经做的是用户不能选择一个无效的值。
但是,这并不妨碍用户实际尝试输入无效值。他仍然可以编辑或删除他目前看到的值。你可以通过只允许使用预定义的键来实现这一点,比如这里指出的missinglinq
Private Sub ComboBoxName_KeyDown(KeyCode As Integer, Shift As Integer)
选择案例键码
case vbKeyReturn, vbKeyTab, vbKeyUp, vbKeyDown KeyCode = KeyCode '接受这些键
Case Else KeyCode = 0 '阻止所有其他键 End Select
结束子
推荐阅读
- python-3.x - 如何使用 pytest monkeypatch 模拟两个连续的控制台输入
- python - Python电报机器人不执行动作操作
- jquery - 为什么 jquery select.val() 在 AngularJS 环境中返回类型:值?
- shell - 打印匹配的行和上面匹配另一个模式的行
- kendo-ui - 无法读取 null 的属性“排序”
- laravel - 是否可以以 Octobercms 形式有多个数据请求?
- java - 如何从spring data jpa中的子主键获取父实体?
- c# - 在实体框架中使用 TPT 设计的多级继承
- azure-iot-hub - 如何在 Linux 和 C# 上为 Azure DPS 使用 TPM 上生成的 X.509 证书
- excel - 查找某个值的列中的所有重复项,并从下一列返回值