首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用类的ErrorProvider

使用类的ErrorProvider
EN

Stack Overflow用户
提问于 2011-10-29 01:38:42
回答 2查看 1.4K关注 0票数 1

我做了以下的类,以避免重复,如果是其他代码,一次又一次:

代码语言:javascript
复制
public class Error 
{

    private ErrorProvider errProvider;


    public void SetError(Control control, string value)
    {

        errProvider = new ErrorProvider();

        if (control.Text.Trim().Length == 0)
        {
            errProvider.SetError(control, value);
        }
        else
        {
            errProvider.SetError(control, "");

        }

    }


}

而对文本框代码的验证是

代码语言:javascript
复制
private void textBox1_Validating(object sender, CancelEventArgs e)
    {

            erp.SetError(textBox1, "Please Enter Name");

    }

在文本框中键入文本后,当我按enter键时,它工作得很好;在文本框中没有输入任何东西的情况下,当我按Enter时,它也工作得很好,这意味着出现了removed.红色图标;但是

  • 在警告之后,当我在文本框中输入文本后按下选项卡,警告图标就不会消失,它应该是

没有类,它可以很好地处理相同的代码。

最新消息?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-29 03:44:08

使用字段初始化器

代码语言:javascript
复制
private readonly ErrorProvider errProvider = new ErrorProvider();

您应该为errProvider使用字段初始化器,因为每次调用Error.SetError时,都会构造ErrorProvider,并且构建的ErrorProvider不仅不会消失,而且还会被分层。

已更新

代码语言:javascript
复制
public class Error
{
    private readonly ErrorProvider errProvider = new ErrorProvider();
    public void SetError(Control control, string value)
    {

        if (control.Text.Trim().Length == 0)
        {
            errProvider.SetError(control, value);
        }
        else
        {
            errProvider.SetError(control, "");
        }
    }
}
票数 2
EN

Stack Overflow用户

发布于 2011-10-29 04:01:14

ErrorProvider的构造移动到声明行。因此,改变:

代码语言:javascript
复制
private ErrorProvider errProvider;

至:

代码语言:javascript
复制
private ErrorProvider errProvider = new ErrorProvider(); 

并去掉当前在SetError方法中的那个成员的初始化。

向我们展示如何以及何时创建和存储对您正在使用的Error类实例的引用也可能是有用的。

此外,将您的验证代码放入一个名为SetError的方法中会有一点误导(这会使您的代码更难维护)。我想把它命名为ValidateControlHasValue之类的东西。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7936438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档