【发布时间】:2011-09-21 07:02:14
【问题描述】:
我有一个 WPF 工具包 DataGrid,其 ItemsSource 属性绑定到 DataTable。 DataTable 对其中一列具有唯一约束。如果我尝试在列中输入非唯一数据,则会从我无法访问的代码区域引发异常(这很好),然后应用程序崩溃(这很糟糕)。
如何捕获或以其他方式处理此异常以使应用程序不会崩溃?
【问题讨论】:
-
你能显示一些代码吗?你也捕捉到异常了吗,你在catch语句中做了什么
-
@Hasanain,你想看什么代码?不,我没有捕捉到异常,但我想 - 因此问题。
-
我假设您有一个库/dll,但您没有源代码,异常会出现在您的代码中...那么您能否显示代码,关于您在哪里/如何使用数据表...
-
绑定是在 XAML 中声明的,所以我无法访问任何代码来包装在 try catch 中。我假设有另一种方法来处理这种绑定异常。
-
您是否尝试在您的
ViewModel中实现IDataErrorInfo并检查输入的数据?如果数据不是唯一的,请定义一个错误,Exception不会被抛出,您的TextBox只会显示为红色,显示发生了错误(更多信息:codeproject.com/KB/WPF/wpfvalidation.aspx)
标签: c# wpf datagrid binding wpftoolkit