混合中的自定义事件触发器

本文关键字:事件 触发器 自定义 混合 | 更新日期: 2023-09-27 18:37:24

嗨,最近几天我一直在学习"表达式混合 4"的 WPF,这就是我想要完成的。

我有一个主窗口,里面有一个自定义按钮。

我想做的是,当鼠标光标位于窗口的左侧时,我希望按钮开始其动画并移动到我的光标。或者,当光标位于窗口右侧时,我希望按钮向右移动。

我为此创建了自定义事件。我已经用"消息框"测试了它们,如果我向左或向右移动,就会弹出。实际上,我希望它们向左或向右制作动画。但是为了创建动画时间线,我无法在 blend 上找到我的自定义事件。有没有办法解决这个问题?

下面的部分代码

private event EventHandler MoveRightEvent;
private event EventHandler MoveLeftEvent;
    public MainWindow()
    {
        this.InitializeComponent();
        // Insert code required on object creation below this point.
    MoveRightEvent += new EventHandler(MainWindow_MoveRightEvent);
    MoveLeftEvent += new EventHandler(MainWindow_MoveLeftEvent);
    }
void MainWindow_MoveLeftEvent(object sender, EventArgs e)
{
    MessageBox.Show("Moved Left!!");
}
void MainWindow_MoveRightEvent(object sender, EventArgs e)
{
    MessageBox.Show("Moved Right!!");
}

混合中的自定义事件触发器

您的问题是关于 EventTrigger 的(请注意,在这种情况下,您必须使用 RoutedEvent 而不是 .NET Event),但您的问题正在请求自定义行为,如以下示例所示: WPF 教程:行为