【问题标题】:Winforms RadTextBox control validating event triggered twiceWinforms RadTextBox 控件验证事件触发了两次
【发布时间】:2014-07-04 05:50:08
【问题描述】:

我正在对 TextBox 验证事件进行数据库验证。如果数据无效,我也在使用 e.Cancel = True 。问题是验证事件被触发两次,最终导致 SQL 也运行两次,我不希望这种情况发生(因为有时查询是资源密集型的)。

步骤:

  1. 将 RadTextBox 和 RadLabel 拖放到表单中。
  2. 对于 RadTextBox 验证事件,请使用以下代码。
  3. 运行应用程序,聚焦 RadTextBox,然后单击标签。然后,如果您检查 Visual Studio 的输出窗口,您会注意到控制台已记录验证事件实际上被触发了两次。 (该事件仅在我尝试单击 RadButton 或 RadLabel 时运行两次)

我在 SQL Server Profiler 中检查查询时注意到了这个错误,并且查询被执行了两次,这是不必要的。我还检查了实际的 wincontrols,但其中不存在此问题。

我该如何解决这个问题?

这里是复制行为的示例代码

Private Sub RadTextBox1_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles RadTextBox1.Validating
    Console.WriteLine("VALIDATING EVENT TRIGGERED")        
    e.Cancel = True    
End Sub

【问题讨论】:

    标签: vb.net winforms telerik


    【解决方案1】:

    这似乎是 RadTextBox 的一个已知问题:issue link

    也许您可以根据需要尝试RadTextBoxControl

    【讨论】:

    • 我将这个错误记录到 Telerik 并且他们承认这实际上是一个错误。 RadTextBoxControl 也有同样的问题。
    猜你喜欢
    • 2014-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-07
    相关资源
    最近更新 更多