MouseMove 事件不是静态且只读的
MouseMove Event not static and readonly
我正在尝试将 "mousemove" 事件的委托添加到 class 中的方法。我正在使用我将用于 Xaml "MouseMove" 的事件处理程序,但它不可用,只有 "MouseMoveEvent" 可用(我不知道这是否会影响事情)。
我查看了元数据中的 2 种不同类型,但它告诉我的不多。我也试过将它链接到只读和静态的方法,但它无效。
我正在像这样制作委托:
MainWindow.MouseMoveEvent += delegate (object sender, MouseEventArgs e) { Project.Mouse_Move(this); };
其中 MainWindow 是我的 UI 的 window。这是它调用的函数
public partial class Program
{
public void Mouse_Move(MainWindow MainWind)
{
}
}
我正在尝试获得与您通过 xaml:
相同的结果
Title="MainWindow" MouseMove="Window_MouseMove">
和这样的方法:
private void Window_MouseMove(object sender, MouseEventArgs e)
{
}
MainWindow
是一种类型。您需要引用 window 的实际实例才能将事件处理程序连接到它的 MouseMove
事件。试试 Application.Current.MainWindow
:
Application.Current.MainWindow.MouseMove += delegate (object sender, MouseEventArgs e) { Project.Mouse_Move(this); };
或Application.Current.Windows
:
var window = Application.Current.Windows.OfType<MainWindow>().FirstOrDefault();
if(window != null)
window.MouseMove += delegate (object sender, MouseEventArgs e) { Project.Mouse_Move(this); };
我正在尝试将 "mousemove" 事件的委托添加到 class 中的方法。我正在使用我将用于 Xaml "MouseMove" 的事件处理程序,但它不可用,只有 "MouseMoveEvent" 可用(我不知道这是否会影响事情)。
我查看了元数据中的 2 种不同类型,但它告诉我的不多。我也试过将它链接到只读和静态的方法,但它无效。
我正在像这样制作委托:
MainWindow.MouseMoveEvent += delegate (object sender, MouseEventArgs e) { Project.Mouse_Move(this); };
其中 MainWindow 是我的 UI 的 window。这是它调用的函数
public partial class Program
{
public void Mouse_Move(MainWindow MainWind)
{
}
}
我正在尝试获得与您通过 xaml:
相同的结果Title="MainWindow" MouseMove="Window_MouseMove">
和这样的方法:
private void Window_MouseMove(object sender, MouseEventArgs e)
{
}
MainWindow
是一种类型。您需要引用 window 的实际实例才能将事件处理程序连接到它的 MouseMove
事件。试试 Application.Current.MainWindow
:
Application.Current.MainWindow.MouseMove += delegate (object sender, MouseEventArgs e) { Project.Mouse_Move(this); };
或Application.Current.Windows
:
var window = Application.Current.Windows.OfType<MainWindow>().FirstOrDefault();
if(window != null)
window.MouseMove += delegate (object sender, MouseEventArgs e) { Project.Mouse_Move(this); };