扩展 Wpf MouseButtonEventArgs 以启用自定义参数

本文关键字:自定义 参数 启用 Wpf MouseButtonEventArgs 扩展 | 更新日期: 2023-09-27 18:33:22

创建任何事件处理程序时,我知道没有可以将自己的参数传递给事件处理程序的选项。

例如MouseDown事件,

void TxblckLineNum_MouseDown(object sender, RoutedEventArgs e)
{
    //do stuff with e ...
}

我需要在 e 参数中传递更多属性,所以我尝试从各种 EventArgs 类派生,但我不能将它们中的任何一个用作e

将一些额外数据传递到事件处理程序的最佳方法是什么?

扩展 Wpf MouseButtonEventArgs 以启用自定义参数

TxblckLine.MouseDown += new System.Windows.Input.MouseButtonEventHandler((s, e) => TxblckLineNum_MouseDown(s, e, SomePar, SomeOtherPar));

void TxblckLineNum_MouseDown(object sender, RoutedEventArgs e, string SomePar, int SomeOtherPar)
{
    //do stuff with SomePar / SomeOtherPar...
}