gpt4 book ai didi

c# - MVVM - 特殊事件的命令

转载 作者:行者123 更新时间:2023-12-03 10:23:22 24 4
gpt4 key购买 nike

我尝试将命令与 MVVM - Pattern 一起使用,但我不知道如何将命令“绑定(bind)”到特殊事件,例如MouseUp 或 MouseEnter。这该怎么做?

最佳答案

首先你应该定义ICommnad您的 ViewModel 中的属性(property).

public ICommand MouseUpCommand
{
get
{
if (this.mouseUpCommand == null)
{
this.mouseUpCommand = new RelayCommand(this.OnMouseUp);
}

return this.mouseUpCommand;
}
}

private void OnMouseUp()
{
// Handle MouseUp event.
}

你可以找到很多 ICommand实现。其中之一:
public class RelayCommand : ICommand
{
public RelayCommand(Action<object> execute)
{
this._execute = execute;
...
}

...

public void Execute(object parameter)
{
_execute(parameter);
}
}

然后添加事件触发器,在其中调用您的 Command :
<i:EventTrigger EventName="MouseUp">
<i:InvokeCommandAction Command="{Binding MouseUpCommand}"/>
</i:EventTrigger>

关于c# - MVVM - 特殊事件的命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19681774/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com