热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

解决WPF快速点击Datagrid出现异常问题

在WPF开发中最近遇到一个很变态的问题:快速点击Datagrid之后,再对Datagrid操作时会出现如下异常privatevoiddtgSchemeA

在WPF开发中最近遇到一个很变态的问题:快速点击Datagrid之后,再对Datagrid操作时会出现如下异常

                     

 

      

        private void dtgSchemeApp_PreviewMouseDown(object sender, MouseButtonEventArgs e)
        {
            if (IsUnderTabHeader(e.OriginalSource as DependencyObject))
            {
                CommitTables(this.LV_Points);
            }
                
        }

        private bool IsUnderTabHeader(DependencyObject control)
        {
            if (control is Border)
                return true;
            DependencyObject parent = VisualTreeHelper.GetParent(control);
            if (parent == null)
                return false;
            return IsUnderTabHeader(parent);
        }

        private void CommitTables(DependencyObject control)
        {
            if (control is DataGrid)
            {
                DataGrid grid = control as DataGrid;
                grid.CommitEdit(DataGridEditingUnit.Row, true);
                return;
            }
            int childrenCount = VisualTreeHelper.GetChildrenCount(control);
            for (int childIndex = 0; childIndex                 CommitTables(VisualTreeHelper.GetChild(control, childIndex));
        }

 


推荐阅读
author-avatar
Song_Rr
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有