C# 捕获其他应用程序中的按钮单击事件

C# 捕获其他应用程序中的按钮单击事件,c#,winforms,C#,Winforms,我想捕捉在Windows窗体应用程序上单击的按钮的单击事件,比如在应用程序A中,我想在应用程序B中捕捉它,这也是一个Windows窗体应用程序 我已经创建了这两个应用程序,并在应用程序A中添加了按钮。现在,当在应用程序A中单击按钮时,我希望捕获应用程序B中的事件 请指导。没有“快速”的方法在不同进程之间共享.NET事件。 您需要捕获引发事件的同一应用程序中的事件,在应用程序A和应用程序B之间实现进程间通信机制(WCF、套接字等),并使用它将事件数据从A发送到B 有关更多详细信息,请参阅此问题和相

我想捕捉在Windows窗体应用程序上单击的按钮的单击事件,比如在应用程序A中,我想在应用程序B中捕捉它,这也是一个Windows窗体应用程序

我已经创建了这两个应用程序,并在应用程序A中添加了按钮。现在,当在应用程序A中单击按钮时,我希望捕获应用程序B中的事件

请指导。

没有“快速”的方法在不同进程之间共享.NET事件。 您需要捕获引发事件的同一应用程序中的事件,在应用程序A和应用程序B之间实现进程间通信机制(WCF、套接字等),并使用它将事件数据从A发送到B

有关更多详细信息,请参阅此问题和相关答案:

没有“快速”的方法在不同进程之间共享.NET事件。 您需要捕获引发事件的同一应用程序中的事件,在应用程序A和应用程序B之间实现进程间通信机制(WCF、套接字等),并使用它将事件数据从A发送到B

有关更多详细信息,请参阅此问题和相关答案:

您可以使用或鼠标挂钩 (P/s)

(在Windows 10上测试,VS 2015)

(也是但更复杂)

您可以使用鼠标钩或鼠标钩 (P/s)

(在Windows 10上测试,VS 2015)


(也是但更复杂)

我可以向您解释一下,如果不是这样,您可能会捕捉到按钮单击事件

您可以在第一个窗体或可访问类中创建第二个窗体的实例,然后在第二个窗体或类中调用一个公共方法,这可以满足您的需要

表格1示例:

var _secondForm = new Form2();

private void Form1_Load(object sender, EventArgs e)
{
    _secondForm.Open();
}

private void button1_Click(object sender, EventArgs e)
{
    MethodInSecondForm()
}
第二种形式:

public void MethodInSecondForm()
{
    // Event here
}

您也可以在类中创建此实例,使其更简单。

我可以向您解释,否则您可能会捕捉到按钮单击事件

您可以在第一个窗体或可访问类中创建第二个窗体的实例,然后在第二个窗体或类中调用一个公共方法,这可以满足您的需要

表格1示例:

var _secondForm = new Form2();

private void Form1_Load(object sender, EventArgs e)
{
    _secondForm.Open();
}

private void button1_Click(object sender, EventArgs e)
{
    MethodInSecondForm()
}
第二种形式:

public void MethodInSecondForm()
{
    // Event here
}
您也可以在类中创建此实例,使之更容易。

在.Net中提供:。它可以添加到窗体/窗口中,指定子元素的整个子树以及事件类型。可在.Net中获得:。它可以添加到窗体/窗口中,指定子元素的整个子树以及事件类型