Avalonia DataGrid 控件的LostFocus事件会多次触发

10-18:有大佬指出两点

①:focus要和单元格内容是否为空一起判断(这个有时间我会验证一下,不然每个控件加个按钮显得呆呆的)

②点击表示选中,编辑是双击

不知道我的用法是否正确。

需求是在修改单元格后,希望原单元格失去焦点后,会自动触发保存功能。

发现DataGrid控件里有一个LostFocus事件,想用随机数验证一下事件的触发情况

可能会把项目放到触摸屏上用,所以想试试。

cs 复制代码
  private void Dgv_OnLostFocus(object? sender, RoutedEventArgs e)
    {
        Random rd = new Random();
        
        Console.WriteLine($"失去焦点验证+{rd.Next(10,100)}");
    }

现在表格没有选中,控制台也清空了。

点击测试

单击 了序号3,再单击序号4。

红色光圈是单击 序号3触发,下面两条是从序号3单击序号4触发。

注意:此时甚至没有进入编辑状态

刚进入系统的时候,直接单击 任意单元格会触发3次事件从而进入编辑状态。

现在清空控制台,尝试直接再次单击已选中进入编辑状态

进入编辑状态

可见控制台输出了3次

。。。。。。

直接从选中行,双击进入新选中行的编辑状态

双击序号1

控制台LostFocus触发了5次。。。。额。。。。

还是加个保存按钮吧。。

相关推荐
Scott9999HH7 小时前
【IIoT流量实战】蒸汽管道阀门全关却仍有流量?用 Python 实现涡街信号 FFT 频谱分析与温压全补偿积算网关,深度拆解靠谱的涡街流量计厂家硬核技术标准
开发语言·python
EIP低代码平台7 小时前
EIP 低代码平台 - 角色维护
低代码·c#·权限·工作流·netcore
码智社8 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
AI云海8 小时前
python 列表、元组、集合和字典
开发语言·python
萧瑟余晖9 小时前
JDK 26 新特性详解
java·开发语言
马优晨10 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
人邮异步社区11 小时前
怎么把C语言学到精通?
c语言·开发语言
心平气和量大福大12 小时前
C#-WPF-控件-TextBox 数据绑定
开发语言·c#·wpf
ttwuai12 小时前
Cursor 生成 CRUD 后,Go 后台接口别只测 200:JWT、RBAC 和 tenant_id 怎么验
开发语言·后端·golang
এ慕ོ冬℘゜12 小时前
前端基础:什么是时间戳?JS获取时间戳三种方法与实战用途
开发语言·前端·javascript