EditEnding事件之前的数据形式验证

时间:2012-07-27 15:59:06

标签: c# silverlight dataform

我正在使用带有ria域服务的DataForm,该服务使用名为country的表。由于数据表单在单击“确定”后没有自动向表中添加新国家/地区,因此我已编写代码在DataForm的EditEnding事件中执行此操作。

但为什么在EditEnding事件之后验证用户输入?

如果我添加一个没有名称的新国家/地区,则应在进入EditEnding之前推送验证错误,但此时没有验证错误。事件被触发后,我收到了验证错误。

如何使用自动验证使我的代码正常工作?

private void CountryDataForm_EditEnding(object sender, DataFormEditEndingEventArgs e)
    {
        if (e.EditAction == DataFormEditAction.Commit)
        {
            if (CountryDataForm.Mode == DataFormMode.AddNew)
            {
                if (!CountryDataForm.ValidationSummary.HasErrors)
                {
                    Country item = CountryDataForm.CurrentItem as Country;
                    item.CountryID = Guid.NewGuid();
                    GridData.SubmitChanges();
                }
            }
        }
    }

1 个答案:

答案 0 :(得分:0)

好的,我找到了解决方案。我试图在EditEnding-Event中提交更改。这应该发生在DataForm的EditEnded-Event中。