当组合框的行源不包含此值时,如何在窗体的字段(组合框)中显示所有数据

贾基姆斯

当表单上的字段是组合框控件时,先前输入到字段中的数据不显示

具有显示事件信息的表单。它包括最初设置它的工作人员的姓名。此控件的组合框行源仅是当前工作人员的列表。如果设置事件的原始员工已离开(即不是当前),则在该记录上打开表单时,控件将显示空白。

我想知道如何显示历史记录(即任何/所有数据),但是如果用户要更改任何内容,他们只会获得当前(即更新的)列表。

控件存储人员ID,组合框显示人员名称(从人员表链接)。因此,当尝试更改选项时,它说我不能,因为绑定列已隐藏。

阿尔伯特·D·卡勒

您在这里没有很多不错的选择。

您当然不能删除此类记录,因为如您所指出的那样,此类历史记录数据将因此中断。

我可以想到一些建议。

首先,在组合框显示中添加“活动”人员栏。然后,如果用户更改或从组合框中选择,则可以防止(或警告)他们正在选择不存在的工作人员。这将显示非活动人员,但理论上将允许用户选择非活动人员–您可能不希望这样。(但是,如果您想防止这种情况,则可以在更新之前警告或阻止该控件)。

另一种方法是根据当前记录动态加载组合框。换句话说,如果表单处于“添加模式”状态,或者组合框为空白,则使用仅包含StaffActive = True的select语句加载组合框。

如果将“主”表单限制为一个记录(我倾向于这样做),那么上面的方法就可以很好地工作。我倾向于提供搜索表单,然后总是将主表单启动为一个记录。

因此,在表单加载事件中,您可以检查是否设置了工作人员的列ID,如果未设置该列的ID,则可以将所有工作人员加载到组合框中。

如果该列具有处于活动状态的Staff Memember,则在“加载时”窗体中,将组合框的sql设置为仅活动成员。

如果允许记录导航,则此方法“麻烦”。在这种情况下,您必须将测试置于当前事件中,并以这种方式设置组合框的sql。希望员工列表是“小”。

填充组合框的第三种方法是使用回叫。这是LITTLE的一种已知方法,如果发生当前事件,则可以再次测试ID是否处于非活动状态,从而设置可变变量(可能是全局变量),以允许回叫代码包含非活动人员。

但是,如果您将“ id”存储在不再存在的员工记录的该列中,那么您将无能为力。(我可能会尝试使用正确的ID重新输入已删除的员工)。

因此,尚不清楚员工记录是否已删除,或者您是否有一些“活动”标志。如果具有活动标记,则可以“测试”组合框中的人员“ id”是否为非活动人员,然后将正确的sql推入包含非活动人员的组合框数据源中。

我想出于性能的考虑,并减少了“闪烁”,那么我可能会设置/跟踪当前组合框显示的内容,并且仅在需要状态(非活动)成员的情况下才更新组合框。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在熊猫数据框中的列中组合具有不同值的行

使用父窗体中的组合框到子窗体中的列表框输入带有数据的查询

在JavaFX中如何在表视图中添加带有数据的组合框

如何将组合框数据源绑定到Windows窗体中的窗体/列表框?

使用javafx将选择的值上传到数据库时,如何在组合框中仅显示选择的值

数据框中的所有5行组合

打印组合框中的所有值

如何在组合框中显示用户选择的值?

如何在组合框中显示2列?(多个值)

如何在我的报告中显示我的组合框值

如何删除组合框中的所有值?

如何在熊猫数据框中明智地获得所有组合,单元格(行*列映射)

如何在表格中显示组合框?

熊猫组合数据框,删除行,该行的值未出现在所有初始数据框中

数据网格内的组合框不包含可见值

如何在熊猫中获取数据框中三列的所有组合python>

如何在 Pyspark 数据框中创建多列的所有成对组合?

只有一个时如何在组合框中具有选定的值

如何使用c#.net从组合框中的NpgsqlConnection获取所有数据库的列表

如何在熊猫中显示太多列的所有数据框数据类型

如何在组合框中显示具有特定属性值的表格元素?

如何在 Pandas 数据框中获取按 groupby 组合的行的值列表?

在组合框中显示行

如何在熊猫数据框中获取组合的组合?

如何检查数据框中是否存在具有相同值组合的行?

对于某些列的值的所有组合,在数据框中保留行,在另一列中包含相同的元素

向R中的现有数据框添加新的组合值

WPF组合框中的所有颜色,不包含一种

Excel VBA-创建具有多个组合框的动态用户窗体并将所有组合框的值存储在一个数组中并对其进行排序