Avalonia DataGrid 控件的LostFocus事件会多次触发
10-18:有大佬指出两点
①:focus要和单元格内容是否为空一起判断(这个有时间我会验证一下,不然每个控件加个按钮显得呆呆的)
②点击表示选中,编辑是双击
不知道我的用法是否正确。
需求是在修改单元格后,希望原单元格失去焦点后,会自动触发保存功能。
发现DataGrid控件里有一个LostFocus事件,想用随机数验证一下事件的触发情况
可能会把项目放到触摸屏上用,所以想试试。
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次。。。。额。。。。
还是加个保存按钮吧。。