如何:使用 Windows 窗体 ErrorProvider 组件查看数据集中的错误

可以使用 Windows 窗体 ErrorProvider 组件查看数据集或其他数据源中的列错误。 ErrorProvider 组件可以在窗体上显示数据错误,因此,该组件不必与控件直接关联。 绑定到数据源后,该控件就可以在绑定到同一数据源的任何控件旁显示错误图标。

提示

如果在运行时更改错误提供程序的 DataSourceDataMember 属性,应该使用 BindToDataAndErrors 方法避免冲突。

显示数据错误

  1. 将该组件绑定到数据表内的特定列。

    ' Assumes existence of DataSet1, DataTable1
    TextBox1.DataBindings.Add("Text", DataSet1, "Customers.Name")
    ErrorProvider1.DataSource = DataSet1
    ErrorProvider1.DataMember = "Customers"
    
    // Assumes existence of DataSet1, DataTable1
    textBox1.DataBindings.Add("Text", DataSet1, "Customers.Name");
    errorProvider1.DataSource = DataSet1;
    errorProvider1.DataMember = "Customers";
    
    // Assumes existence of DataSet1, DataTable1
    textBox1.get_DataBindings().Add("Text", DataSet1, "Customers.Name");
    errorProvider1.set_DataSource(DataSet1);
    errorProvider1.set_DataMember("Customers");
    
  2. ContainerControl 属性设置为窗体。

    ErrorProvider1.ContainerControl = Me
    
    errorProvider1.ContainerControl = this;
    
    errorProvider1.set_ContainerControl(this);
    
  3. 将当前记录的位置设置为包含列错误的行。

    DataTable1.Rows(5).SetColumnError("Name", "Bad data in this row.")
    Me.BindingContext(DataTable1).Position = 5
    
    DataTable1.Rows[5].SetColumnError("Name", "Bad data in this row.");
    this.BindingContext [DataTable1].Position = 5;
    
    DataTable1.get_Rows().get_Item(5).SetColumnError("Name",
       "Bad data in this row.");
    this.get_BindingContext().get_Item(DataTable1).set_Position(5);
    

请参见

任务

如何:使用 Windows 窗体 ErrorProvider 组件显示窗体验证的错误图标

参考

ErrorProvider 组件概述(Windows 窗体)