AvaloniaDataGridEnterhandling
创始人
2024-11-12 19:00:14
0

Avalonia DataGrid 是一个很好的数据网格控件,在使用过程中,当用户按下 Enter 键时,DataGrid 不会自动将焦点移动到下一行或者执行编辑模式的提交操作,这个问题可以通过以下代码解决:

public class CustomDataGrid : DataGrid
{
    protected override void OnKeyDown(KeyEventArgs e)
    {
        base.OnKeyDown(e);

        if (e.Key == Key.Enter)
        {
            if (SelectedIndex == Items.Count - 1)   // 如果选中行是最后一行,会新增一行
            {
                var newRecord = Items.SourceCollection.Cast().LastOrDefault();
                if (newRecord != null)
                {
                    Items.Add(newRecord.Clone());
                    SelectedIndex = Items.Count - 1;
                }
            }
            else   // 否则会选中下一行
            {
                SelectedIndex++;
            }

            BeginEdit();
        }
    }
}

通过自定义一个继承自 DataGrid 的类,我们可以重载 OnKeyDown 方法,当用户按下 Enter 键时,判断选中行是否是最后一行,如果是则新增一行,否则选中下一行,最后进入编辑模式。这样可以提高 DataGrid 的交互性和用户体验。

相关内容

热门资讯

关于透视!哈糖大菠萝开挂,提高... 关于透视!哈糖大菠萝开挂,提高微乐运气的方法,妙计教程(新版有挂)-哔哩哔哩1、进入到哈糖大菠萝开挂...
必备透视!德普之星透视辅助软件... 必备透视!德普之星透视辅助软件,微乐小程序晃晃脚本,诀窍教程(有挂实锤)-哔哩哔哩1、完成德普之星透...
揭露透视!werplan怎么作... 揭露透视!werplan怎么作弊,小程序微乐游戏辅助,法子教程(有挂教学)-哔哩哔哩1、每一步都需要...
详细透视!德普之星透视辅助软件... 详细透视!德普之星透视辅助软件下载,微乐科技软件下载,大纲教程(有挂教学)-哔哩哔哩1、德普之星透视...
解密透视!xpoker辅助工具... 解密透视!xpoker辅助工具,微乐小程序辅助工具2025,举措教程(确实有挂)-哔哩哔哩1、下载好...
教你透视!wepoker怎么下... 教你透视!wepoker怎么下载游戏,微乐自建房脚本最新版本更新内容,策略教程(有挂秘籍)-哔哩哔哩...
开挂透视!hhpkoer辅助器... 开挂透视!hhpkoer辅助器视频,微乐广西麻辣辅助器,方式教程(真是有挂)-哔哩哔哩1)hhpko...
开挂透视!wepoker私人局... 开挂透视!wepoker私人局俱乐部怎么进,微信小程序微乐辅助器ios,秘籍教程(有挂方式)-哔哩哔...
科普透视!pokemmo修改器... 科普透视!pokemmo修改器手机版,微乐小程序自建房辅助,攻略教程(的确有挂)-哔哩哔哩科普透视!...
解谜透视!hhpoker透视工... 解谜透视!hhpoker透视工具,微信小程序微乐辅助器教程,秘籍教程(有挂解密)-哔哩哔哩所有人都在...