【问题标题】:User Control button click not working as expected用户控制按钮单击未按预期工作
【发布时间】:2014-10-31 15:50:52
【问题描述】:

我创建了一个用户控件,它的作用类似于 Windows 窗体应用程序中的按钮。

看起来像这样

public partial class ControlButton : UserControl
{
    public ControlButton(String id)
    {
        InitializeComponent();
        this.Click += new EventHandler(ControlButton_Click);
        this.MouseEnter += new MouseEventHandler(ControlButton_MouseEnter);
    }
}

问题是Click 事件没有被一致地触发。就像我每点击 5-6 次一样,它就会被点击一次。 MouseEnter 事件没有问题,它会持续触发。

我还尝试了this.MouseClickthis.MouseDown 事件来引发事件,但即使这些都无法正常工作。

知道如何解决这个问题吗?

【问题讨论】:

    标签: c# winforms event-handling


    【解决方案1】:

    简短回答:另一个控件或表单可能正在处理 WM_LBUTTONDOWN 消息。

    此用户控件是否有任何子控件,并且在您单击之前它是否已聚焦?这可以为我们提供更多信息来完整地回答您的问题。

    您是否查看了当您单击控件时收到的 WM_MESSAGE?

    【讨论】:

    • 您好,感谢您的回答。我对控件的内部没有深入的了解。我会尝试弄清楚如何获取这些消息。
    • 顺便说一句。它有一个孩子 -> 一个标签()。我删除了标签,似乎控件正确响应了点击!谢谢!!
    猜你喜欢
    • 2020-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-13
    • 1970-01-01
    相关资源
    最近更新 更多