【问题标题】:WPF Datagrid 'CurrentItem' property not taking updated values from datagridWPF Datagrid 'CurrentItem' 属性未从数据网格中获取更新的值
【发布时间】:2018-09-24 19:22:06
【问题描述】:

希望你一切都好!

Youtube video of my problem

正如您在短视频(49 秒)中看到的那样,当我更改数据网格中的值并单击更新按钮时,datagrid.CurrentItem 没有更改的值,但是当我第二次更新它时我首先在数据网格行之外单击,然后单击它起作用的更新按钮......我尝试了一个可观察的集合(一位同事建议,但我以前从未与他们合作过,据我所知,它没有任何区别。收藏甚至没有更新。)

感谢您抽出宝贵时间提供帮助!

【问题讨论】:

    标签: c# .net wpf datagrid


    【解决方案1】:

    经典的“编辑模式”问题。在第一次拍摄中,单元格处于“编辑模式”,尚未将值提交给行。在第二次拍摄中,您单击关闭,允许单元格的编辑器验证和提交。这是唯一的区别。

    因此,如果您希望能够支持第一种行为,则需要在按钮单击处理程序中添加一行以验证该行。

    可能是这样的:

    rowBeingEdited.EndEdit();
    

    我认为ObservableCollection 不会解决任何问题,因为这不是数据存储问题,而是编辑器没有意识到您已完成编辑的问题。

    【讨论】:

    • 非常感谢!虽然我无法让那条线工作(选择当前行时遇到问题......)你的回答为我指明了正确的方向。我将每列上的 xaml 更改为 <DataGridCheckBoxColumn Binding="{Binding EmpStatus, UpdateSourceTrigger=LostFocus}" ClipboardContentBinding="{x:Null}" Header="Active" > UpdateSourceTrigger 完美!
    猜你喜欢
    • 2017-10-30
    • 1970-01-01
    • 2013-04-21
    • 2021-10-13
    • 1970-01-01
    • 1970-01-01
    • 2019-08-16
    • 2020-12-06
    • 2013-06-17
    相关资源
    最近更新 更多