2009-04-22 101 views
2

由于.NETCF中没有ErrorProvider类,我怎样才能实现类似的功能(不一定是,正如就像ErrorProvider一样)?如何在.NET Compact Framework中模拟ErrorProvider?

我使用所有常规的数据绑定结构将控件绑定到数据表,使用DataRow.RowError属性和DataRow.SetColumnError方法,但我无法在任何DataTable,BindingManagerBase等上找到事件,我可以挂钩接收任何形式的通知。

我坚持调用一个方法来手动遍历我的窗体上的所有控件,并改变绑定控件的一些外观/感觉?

感谢, MRB

回答

0

ErrorProvider类似乎很基本的 - 实际上,有点太基本。如果您有Red Gate Reflector,我会建议拆解课程并查看它。否则,请创建Dictionary<Control, String>

下面是创建自己的供应商一个快速的想法:

Dictionary<Control, String> ErrorSet = new Dictionary<Control, String>(); 

public void SetError(Control control, String message) 
{ 
    // code for adding error information 
    ErrorSet.Add(control, message); 
} 

public String GetError(Control control) 
{ 
    // code for retrieving error information 
    return ErrorSet[control]; 
} 

public String Clear() 
{ 
    // code for clearing all errors 
} 

我没有R-G反射器,否则我会提供更多样的方法。但是这应该提供某种样本来工作。