今天想通过MVVM来绑定MouseEnter事件,现在尝试如下:

首先需要安装包:

再引入命名控件:

xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"

再在VM里面编写鼠标移动的处理事件

<Window x:Class="MvvmMousrEnter.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"xmlns:local="clr-namespace:MvvmMousrEnter"mc:Ignorable="d"Title="MainWindow" Height="450" Width="800"><Grid ><Label Height="160" Width="160" Padding="0" Background="#212121" Foreground="#c9c9c9" VerticalAlignment="Center" HorizontalAlignment="Center"Content="{Binding Name, UpdateSourceTrigger=PropertyChanged}"><i:Interaction.Triggers><i:EventTrigger  EventName="MouseEnter"><i:InvokeCommandAction Command="{Binding _CmdMouseEnter}"/></i:EventTrigger><i:EventTrigger  EventName="MouseLeave"><i:InvokeCommandAction Command="{Binding _CmdMouseLeave}"/></i:EventTrigger></i:Interaction.Triggers></Label></Grid>
</Window>

其实就是两个事件的处理,

看vm模块的处理:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace MvvmMousrEnter
{class My_vm: ObservableObject{string _Name;public string Name{get{return _Name;}set{UpdateProperty(ref _Name, value);}}public DelegateCommand _CmdMouseLeave => new DelegateCommand(CmdMouseLeave);void CmdMouseLeave(object obj){Name = 33333 + "";}public DelegateCommand _CmdMouseEnter => new DelegateCommand(CmdMouseEnter);void CmdMouseEnter(object obj){Name = 44444 + "";}}
}

再看结果:达到预期

为了便于大家交流学习,代码提交如下:

https://gitee.com/g0415shenw/Csharp/tree/master/MvvmMousrEnter

wpf之通过MVVM绑定MouseEnter相关推荐

  1. listview 打开文件 c#_.NET CORE(C#) WPF简单菜单MVVM绑定

    阅读导航 本文背景 代码实现 本文参考 源码 1. 本文背景 WPF中垂直导航菜单大家应该都常用,本文介绍使用MVVM的方式怎么绑定菜单,真的很简单. 2. 代码实现 使用 .Net Core 3.1 ...

  2. .NET CORE(C#) WPF简单菜单MVVM绑定

    阅读导航 本文背景 代码实现 本文参考 源码 1. 本文背景 WPF中垂直导航菜单大家应该都常用,本文介绍使用MVVM的方式怎么绑定菜单,真的很简单. 2. 代码实现 使用 .Net Core 3.1 ...

  3. WPF 如何实现事件绑定 (MVVM)

    什么是事件绑定? 首先说到绑定,一般是在WPF 中常见的,因为WPF中有一个比较好用的框架叫做 MVVM 所以View层的按钮等元件的的动作都是需要和后台ViewModel 中的函数进行绑定的. 如 ...

  4. WPF中DatePiker值绑定以及精简查询

    WPF中DatePiker值绑定以及精简查询 1.WPF中DatePiker值绑定 Xaml中值绑定使用Text <DatePicker Text="{Binding strMinDa ...

  5. WPF中的MVVM模式

    WPF中的MVVM模式 WPF中的MVVM模式                                               周银辉 "设计模式"这样的话题似乎快被园 ...

  6. WPF自定义控件的自定义属性绑定后不更新问题

    WPF自定义控件的自定义属性绑定后不更新问题 原文:WPF自定义控件的自定义属性绑定后不更新问题 需要在绑定时设置属性变更触发 UpdateSourceTrigger=PropertyChanged ...

  7. [WPF 基础知识系列] —— 绑定中的数据校验Vaildation

    [WPF 基础知识系列] -- 绑定中的数据校验Vaildation 原文:[WPF 基础知识系列] -- 绑定中的数据校验Vaildation 前言: 只要是有表单存在,那么就有可能有对数据的校验需 ...

  8. wpf之MVVM绑定背景色

    首先需要绑定一个参数 Background="{Binding bk,UpdateSourceTrigger=PropertyChanged}" 定义一个参数 SolidColor ...

  9. WPF DataGrid MVVM 绑定 SelectedCells

    首先增加一个附加属性类 DataGridSelectedCellsBehavior public class DataGridSelectedCellsBehavior{public static I ...

最新文章

  1. ngx对accept加锁操作
  2. C++——static
  3. 彻底弄懂C语言数组名
  4. SAP CRM settype的创建,背后发生了什么
  5. 学习三分 (概念 + 模板 + 例题:曲线)
  6. Drools 7.11 :入门程序
  7. jsp调用servlet_053 JSP+Servlet整合练习:拼饭后台管理系统框架文档
  8. hangfire 过期记录_黄浦回收豆沙月饼公司,过期饼干回收厂家
  9. Mysql登录时出现Access denied for user ‘root‘@‘localhost‘ (using password YES)无法打开的解决方法
  10. mysql wait_timeout=_Mysql的wait_timeout解决_MySQL
  11. OrCAD(二)功能详情与实战总结
  12. 基于深度学习的短时交通流预测与优化
  13. azure mysql on vnet_Azure Database for MySQL (2) VNET rules
  14. python如何调用math函数库函数_Python math函数库
  15. CCF CSP 公共钥匙盒 JAVA 201709-2 100分
  16. 一招解决A卡下载安卓模拟器问题
  17. 基于HTML个人博客网站项目的设计与实现——个人博客作品展示6页 HTML+CSS
  18. 零基础学习UI设计需要多长时间
  19. 巧用selenium爬取巨潮资讯公司数据
  20. 汽车级三相无传感器、无刷直流(BLDC)电机控制器A4962

热门文章

  1. boost1.55.0在vs2013上编译序列化库失败的解决方法
  2. 用perl操作word
  3. 系统设计和机器学习算法
  4. 牛人开发软件-网站收集
  5. JBox - 模态窗口,工具提示和消息 jQuery 插件
  6. IEC,ASTM,ISO,DIN,JIS等国际标准网站
  7. 接口是java面向对象的实现机制之一_以下说法正确的是: ()_接口是Java面向对象的实现机制之一,以下说法正确的是:( )...
  8. 查看mysql某人执行了什么语句_一条 SQL 语句是如何在 MySQL 中执行的
  9. opencv中mean函数耗时_使用OpenCV进行人脸对齐
  10. pythonmkdir语法错误_Python mkdir一个有难度的问题