C#中 MouseLeftButtonDown MouseLeftButtonUp MouseMove 使用

利用MouseLeftButtonDown MouseLeftButtonUp MouseMove 三个事件,

控制点击左键实现控件处理


首先需要定义一个全局变量

bool isDown = false;

1.在MouseLeftButtonDown事件中处理如下

private void UserControl_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
 {
           isDown = true; //按下鼠标左键,设置标志为true
 }

2.在MouseLeftButtonUp事件中处理如下

private void UserControl_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
 {
            isDown = false;//松开鼠标左键,设置标志为false
 }

3.在MouseMove事件中处理如下

private void UserControl_MouseMove(object sender, MouseEventArgs e)
 {

if(isDown)

{

//需要操作的内容

}

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将C#MouseLeftButtonDown事件绑定到命令,可以使用以下代码: 1. 在XAML添加事件触发器: ``` <Button Content="Click Me" MouseLeftButtonDown="Button_MouseLeftButtonDown"/> ``` 2. 在C#创建命令和命令绑定器: ``` public class MyCommand : ICommand { public event EventHandler CanExecuteChanged; public bool CanExecute(object parameter) { return true; } public void Execute(object parameter) { // 命令要执行的代码 } } public class MyCommandBinding : DependencyObject { public static readonly DependencyProperty CommandProperty = DependencyProperty.RegisterAttached( "Command", typeof(ICommand), typeof(MyCommandBinding), new PropertyMetadata(null, CommandPropertyChanged)); public static ICommand GetCommand(DependencyObject obj) { return (ICommand)obj.GetValue(CommandProperty); } public static void SetCommand(DependencyObject obj, ICommand value) { obj.SetValue(CommandProperty, value); } private static void CommandPropertyChanged(DependencyObject obj, DependencyPropertyChangedEventArgs e) { var element = obj as UIElement; if (element != null) { element.MouseLeftButtonDown += (sender, args) => { var command = e.NewValue as ICommand; if (command != null && command.CanExecute(null)) { command.Execute(null); } }; } } } ``` 3. 在XAML绑定命令: ``` <Button Content="Click Me" local:MyCommandBinding.Command="{Binding MyCommand}"/> ``` 这将使用自定义的命令绑定器将命令绑定到MouseLeftButtonDown事件。当按钮被点击时,命令将被执行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值