在文本更改时访问文本框的复制值

Posted

技术标签:

【中文标题】在文本更改时访问文本框的复制值【英文标题】:Access Copy Value of Textbox on text change 【发布时间】:2016-12-22 15:13:01 【问题描述】:

我在 MS 访问中有一个表单,其中包含一个显示表中记录的子表单。我有一个文本框,其内容基于从子集中选择的记录。如果我选择 id 为 2 的记录,则文本框的值设置为 2。

每次更改值时,我都想将文本框的值复制到表单的另一个文本框。

绑定到子表单的文本框上的 onChange 事件处理程序不会触发,当我在子表单中选择记录时,任何其他事件也不会触发。

我要么编写一些 vba 代码来复制文本,要么使用 makro。

【问题讨论】:

【参考方案1】:

如果您手动更改字段,它可能会触发,例如,此代码适用于我:

Private Sub Text0_Change()
    Text2.Value = Text0.Text
End Sub

(请注意valuetext,因为您在编辑时在该字段中看到的内容与该字段的值不同)

但如果你通过 VBA 更新它就不会

使用宏或 Visual Basic 设置控件的值不会触发控件的此事件。您必须将数据直接键入到控件中,或设置控件的 Text 属性。 https://msdn.microsoft.com/en-us/library/office/ff821734.aspx

如果字段的名称与我的示例中一样,我将拥有更新 Text0 的任何 VB 也更新 Text2

【讨论】:

因为我没有在文本框中手动输入任何内容,而是在子表单中显示给定记录的选定 ID,所以这并没有真正的帮助。有什么方法可以在更改时手动触发事件? 不是根据我包含的链接。当记录更改的事件更新 text0 时,您还需要它来更新 text2。 VB 更新不会触发它。只有你,在 GUI 中输入。

以上是关于在文本更改时访问文本框的复制值的主要内容,如果未能解决你的问题,请参考以下文章

无法更改 ASP.NET MVC 3 中文本框的值

WinUI 3.0 桌面:文本框的背景颜色在鼠标悬停时更改

在访问中更改组合框值时,可以更改/重新计算计算的文本框值

如何在运行时将文本框的文本设置为粗体?

切换启用时文本框的文本略有移动:字体和字体大小更改

禁用文本框的复制或粘贴操作?