【问题标题】:I want to capture mouse click event which was clicked outside of the user control?我想捕获在用户控件之外单击的鼠标单击事件?
【发布时间】:2013-12-20 13:33:25
【问题描述】:

我在窗口 c# 中有一个用户控件,我正在将该控件添加到另一个项目中。我想捕获在用户控件之外单击的鼠标单击事件。如何在其中启用此功能?

【问题讨论】:

  • 所以以另一种形式捕获事件。
  • 多么奇怪的要求。
  • 你能更好地解释你想要做什么吗?类似的事情并非不可能,但您可能不想捕获所有内容(例如点击其他控件)
  • 用户控件包含多个文本框。当我在第一个文本框中输入值时,在按下选项卡按钮后,光标会自动移动到下一个文本框。但它正在转移到项目的下一个控制权。而且我没有那个项目的源代码。现在,我添加了 mouse_click 和 tab button_click 代码来手动处理选项卡。我想添加代码以根据用户控件边界之外的 mouse_click 移动焦点。

标签: c# winforms events


【解决方案1】:

你必须分配这些,但这应该可以工作

bool ValidClick = false; 

private void form_Click(object sender, EventArgs e)
{
    if(!ValidClick)
        ValidClick = true; 
    method();
}
private void control_Click(object sender, EventArgs e)
{
    ValidClick = false; 
    method();
}
public void method()
{
    if(ValidClick)
    {
        //Do method
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-09
    • 1970-01-01
    • 2012-06-28
    • 1970-01-01
    相关资源
    最近更新 更多