gpt4 book ai didi

wpf - 如何禁止将不完整的行添加到我的 DataGrid 中?

转载 作者:行者123 更新时间:2023-12-02 05:08:04 25 4
gpt4 key购买 nike

我有一个绑定(bind)到对象集合的 DataGrid(当前是 .NET 3.5 WPFToolkit 版本,但如果需要,我可以使用 .NET 4.0 开箱即用的 DataGrid)。数据网格中的三列表示用作从数据库中获取其他信息的键的信息片段。此其他信息用于计算以填充数据网格的其他列。

一旦用户输入了这三个字段,并且这些字段中的数据组合存在于数据库中,则该行被认为可以添加到集合中。现在还允许用户自由编辑行中的其他列。一旦用户为任何其他列提供数据,三个“关键”字段将被视为“锁定”——用户可能无法再编辑它们。更改该信息的唯一方法是删除整行并添加新行。

1) 从用户体验的角度来看,处理此问题的最佳方法是什么?我是否应该允许用户在任何列中输入数据,“缓存”他们的条目,然后仅在输入“关键”数据后才立即进行所有计算?或者我应该限制用户只能先输入“关键”数据,然后允许用户在其他列中输入数据?

2) 在数据网格中实现上述内容的策略(我需要的事件处理程序等)是什么?在新行具有有效的“关键”数据之前,我如何不允许将其添加到数据绑定(bind)集合中,或者我是否允许添加带有验证错误的新行并以某种方式跟踪用户是否可以继续编辑部分完整行的“关键”列,但不编辑数据网格中的其他现有行?

最佳答案

这是我针对我的特殊情况所做的:

1) 处理此问题的最佳方法是为用户提供最大的灵 active 。这意味着允许用户在一定条件下编辑关键数据,但不限制用户先输入关键数据。

2) 实现策略分为两部分。首先,定义何时不允许用户再编辑键数据,并为基于触发器将键值列切换为只读模式的数据网格列添加样式。其次,当键数据发生变化时,执行所有幕后逻辑,就像使用旧键数据删除行然后使用新键数据创建一样。这将涵盖我需要发生的所有副作用。

关于wpf - 如何禁止将不完整的行添加到我的 DataGrid 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8883700/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com