如何修改详情视图的ItemUpdating事件中的输入数据?

时间:2010-01-02 20:03:44

标签: asp.net events detailsview

您能指导我如何在ItemUpdating事件中访问DetailsView的输入数据?
我想对用户输入到Detailsview的数据进行一些修改。 谢谢

2 个答案:

答案 0 :(得分:4)

DetailsView控件的ItemUpdating事件包含的参数既包含原始数据(如果可用),也包含用户输入的新数据。以下是如何检查数据和可选择修改它:

private void OnDetailsViewItemUpdating(object sender, DetailsViewUpdateEventArgs e) {
    if (String.Equals((string)e.NewValues["firstName"], "john", StringComparison.OrdinalIgnoreCase)) {
        // "John" is not a valid name, so change it to "Steve":
        e.NewValues["firstName"] = "Steve";
    }
    if (String.Equals((string)e.NewValues["lastName"], "doe", StringComparison.OrdinalIgnoreCase)) {
        // If "Doe" is the last name, cancel the whole operation
        e.Cancel = true;
    }
}

有关DetailsViewUpdateEventArgs类型的详细信息,请参阅MSDN。

答案 1 :(得分:0)

如何将数据绑定到Detailsview?

如果它通过LinqDataSource,SqlDataSource或ObjectDataSource绑定,我建议您查看更新事件。在那里,您可以通过EventArgs访问该对象。

e.NewObject或类似的东西

您可以将此属性强制转换为相应的类型并进行更改。