WPF将TextBox绑定到整数属性而不抛出异常

时间:2015-11-01 15:58:06

标签: c# wpf data-binding

我将TextBox.Text绑定到int属性:

<TextBox Text="{Binding Lines, UpdateSourceTrigger=PropertyChanged}" />

private int _lines = 10;
public int Lines
{
    get { return _lines; }
    set { _lines = value; }
}
使用这个简单的代码,

所有按预期工作,甚至还有TextBox的验证。但是,输出日志中会抛出异常System.FormatException。我的问题是:
是否有优雅的方法摆脱异常而不重新实现几乎一切我自己?
我所说的一切都是验证器,转换器等等,只是调用Int32.TryParse代替Int32.Parse而没有做任何事情的代码。不是由wpf抛出和处理的异常将是一个大问题,但完整日志使得查找实际问题变得更加困难。

1 个答案:

答案 0 :(得分:1)

问题并不是那么清楚,但我认为你指的是如果用户输入无效文本(即非数字,非整数数据)时发生的异常。

AFAIK,WPF不包含限制用户输入的内置控件。所以你的选择是: