【发布时间】:2017-03-23 08:34:03
【问题描述】:
所以我有一个关于我正在从事的项目的问题:
什么事件用于触发按钮控件中的命令?只是点击事件吗?
因为当我单击按钮时,我的命令将在释放鼠标按钮后执行?所以这就是我想知道的原因。
<Button x:Name="ClickButton" Content="Click here" HorizontalAlignment="Left" Margin="325,123,0,0" VerticalAlignment="Top" Width="75" Command="{Binding ClickHereCommand}"/>
ViewModel 中的代码
public ICommand ClickHereCommand => (new CommandHandler(() => IsGoingUp(), _canExecute));
public void IsGoingUp()
{
Console.WriteLine("Moving up...");
}
【问题讨论】:
-
当您实际点击时,点击甚至会被触发。你在找什么?
-
@Anand,后面添加了代码,当我点击按钮并按住它时,释放鼠标按钮后控制台写入行将被执行
-
Wpf - 阅读routed events,tbh 我不知道确切的顺序,但可以肯定的是鼠标按下+鼠标向上事件,检查坐标保持不变,也许(我不知道)时间检查。这将防止大多数错误场景检测到点击:例如释放鼠标左键外按下的按钮。