0

我有 numericUpDown 控制 minValue - 0 maxValue - 100。

我创建了对此控件的绑定。

如果值改为101就会出现异常,这是我不需要的,我想值也没有特别提到。怎么做 ?

更新:

BindinHelper.BindField(this.nUpDownExecArea, "Value", TempConfigClass, "ExecArea");

绑定字段:

public static void BindField(Control control, string propertyName,
               object dataSource, string dataMember)
        {
            Binding bd;

            for (int index = control.DataBindings.Count - 1; (index == 0); index--)
            {
                bd = control.DataBindings[index];
                if (bd.PropertyName == propertyName)
                    control.DataBindings.Remove(bd);
            }
            control.DataBindings.Add(propertyName, dataSource, dataMember, false, DataSourceUpdateMode.OnPropertyChanged);
        }

我设置 TempConfigClass.ExecArea = 99999;

不会导致错误,但是当我转到错误似乎是 numericUpDown 的选项卡(tabcontrol)时

4

1 回答 1

3

argumentOutOfRangeException 告诉您收到的参数是异常的。但是,如果您的应用程序的设计方式期望某些参数,那么有两种方法可以解决它:

推荐的方法- 只需在绑定发生之前检查值,如果超出范围,请防止它进一步

- 使用 try/catch 块仅捕获特定异常并相应地处理它

于 2011-07-20T16:08:51.607 回答