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 的交互性和用户体验。

相关内容

热门资讯

透视讲解!德普之星的辅助工具介... 透视讲解!德普之星的辅助工具介绍(透视)辅助器app(都是是有挂)1、全新机制【德普之星的辅助工具介...
透视好牌!aapoker怎么控... 透视好牌!aapoker怎么控制牌(透视)透视脚本(一贯是有挂);1、起透看视 aapoker怎么控...
透视玄学!aapoker插件下... 透视玄学!aapoker插件下载(透视)辅助插件工具(竟然存在有挂)1、上手简单,内置详细流程视频教...
透视总结!德普辅助器辅助器怎么... 透视总结!德普辅助器辅助器怎么用(透视)辅助软件(竟然有挂)1、任何德普辅助器辅助器怎么用ai辅助神...
透视数据!aapoker透视方... 透视数据!aapoker透视方法(透视)真的假的(原来有挂);运aapoker透视方法辅助工具,进入...
透视脚本!德普辅助器辅助器怎么... 透视脚本!德普辅助器辅助器怎么用(透视)的辅助工具介绍(其实真的有挂);1、打开软件启动之后找到中间...
透视科技!aapoker怎么选... 透视科技!aapoker怎么选牌(透视)辅助插件工具(都是真的是有挂)1、游戏颠覆性的策略玩法,独创...
透视教学!德普之星怎么开辅助(... 透视教学!德普之星怎么开辅助(透视)透视辅助(果然是真的有挂)1、德普之星怎么开辅助透视辅助简单,德...
透视能赢!德普之星有透视辅助吗... 透视能赢!德普之星有透视辅助吗(透视)私人局辅助免费(竟然存在有挂)1、完成德普之星有透视辅助吗透视...
透视黑科技!aa poker辅... 透视黑科技!aa poker辅助(透视)透视脚本下载(竟然真的是有挂)1、起透看视 aa poker...