将新行添加到 RadGridView - WPF 时如何防止 RowValidating 事件
How to prevent RowValidating event when a new row is added to a RadGridView - WPF
我有一个 Telerik RadGridView,用户可以在其中添加行和内联编辑。我正在使用 RowValidating 事件来确保用户不会在未填写必要字段的情况下离开一行。
但是,在添加新行时开始调用 RowValidating 事件,这意味着新行一创建就以红色显示,因为用户尚未填写必要的字段。
添加新行时如何防止调用 RowValidating 事件(或知道忽略它)?
注意:我不能只检查是否没有数据,如果是,则在方法的开头检查 return,因为我想以不同的方式处理这种情况,以允许用户删除空行。
您可以检查 GridViewRowValidatingEventArgs 的 EditOperationType。
将以下行添加到 RowValidating 方法的开头:
if (e.EditOperationType == GridViewEditOperationType.None) return;
如果要添加新行,这将跳过该方法的其余部分。
注意:我不知道为什么在添加新行时 EditOperationType 是 'None' 而不是 'Insert',但看起来就是这样。
我有一个 Telerik RadGridView,用户可以在其中添加行和内联编辑。我正在使用 RowValidating 事件来确保用户不会在未填写必要字段的情况下离开一行。
但是,在添加新行时开始调用 RowValidating 事件,这意味着新行一创建就以红色显示,因为用户尚未填写必要的字段。 添加新行时如何防止调用 RowValidating 事件(或知道忽略它)?
注意:我不能只检查是否没有数据,如果是,则在方法的开头检查 return,因为我想以不同的方式处理这种情况,以允许用户删除空行。
您可以检查 GridViewRowValidatingEventArgs 的 EditOperationType。
将以下行添加到 RowValidating 方法的开头:
if (e.EditOperationType == GridViewEditOperationType.None) return;
如果要添加新行,这将跳过该方法的其余部分。
注意:我不知道为什么在添加新行时 EditOperationType 是 'None' 而不是 'Insert',但看起来就是这样。