c# - 当 Visible = False 时,TextBox TextChanged 事件不会触发?

标签 c# winforms data-binding textbox textchanged

我有一个绑定(bind)到数据源的文本框。文本框的 TextChanged 事件更新另一个文本框。

问题是,我不想显示第一个文本框,所以我将其 Visible 属性设置为 false。

但是,现在 TextChanged 事件没有触发!

我可以通过在表单加载时设置 Visible=TrueLeft=-100000 来解决这个问题,但我想要一个合适的解决方案。

谁能解释一下?

最佳答案

在 FormLoad 事件中而不是在设计器中设置您的 textbox.Visible = false。它与处理创建有关。如果文本框在构建过程中不可见,则不会创建句柄。如果在构造后文本框不可见,则句柄将被创建并且事件将发生。

查看此 discussion在 MSDN 上。

关于c# - 当 Visible = False 时,TextBox TextChanged 事件不会触发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3091404/

相关文章:

c# - 无法将类型 'System.Collections.Generic.List<String>' 隐式转换为 'System.Collections.Generic.IEnumerable<turon.Model.Products_Products>

c# - 在 WCF 中传递数组类型的动态数据成员

vb.net - 如何在 vb.net 中使用 TextRenderer DrawText 换行长字

c# - Winforms PropertyGrid - 属性不可编辑

c# - 在我的 C# XAML Windows 8.1 应用程序中,如何进行编程绑定(bind)?

wpf - 如何将 WPF 控件绑定(bind)到后面的代码?

android - ObservableInt 导致数据绑定(bind)库崩溃

c# - 连接字符串中的 Mongodb autoConnectRetry 选项不适用于 C# 驱动程序

javascript - 自动滚动到 Gridview asp.net 中最后插入的行

c# - 在多线程应用中卡住