- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
从 CoerceValueCallback
抛出异常是否合适?如果给定值无效或应该只是 ValidateValueCallback
用于DP值验证?
最佳答案
CoerceValue 确实应该用于修复一个值(例如,将其限制在 min 和 max 之间)。我不知道抛出异常是否会使应用程序崩溃(您只需要对其进行测试以找出答案)还是框架会处理它,但无论如何我都不推荐它,因为它会违反良好的编码习惯。
为了获得 ValidateValue 的额外信息,有时您必须在类中定义一些额外的字段。您可以绑定(bind)这些字段或在为您的 DP 设置值之前设置它们,然后在您的 ValidateValue 中您可以访问这些字段并获取所需的额外信息。这个额外的字段通过中间“层”创建和传递信息,微软似乎没问题,因为这就是他们(短视)设计框架的方式。
我会给你一个关于新的 WPF 数据网格的例子。如果您采用标准路线并定义 RowValidationRule,您将希望有权访问 ItemsSource(您的表),以确定您的行中的给定值是否已存在于表中。这是一件非常标准的事情,但验证回调中未提供该信息。因此,您必须在验证类中创建一个字段,您可以将 DataGrid 的 ItemsSource 绑定(bind)到该字段,然后您可以在验证期间访问该字段......
关于wpf - 从 CoerceValueCallback 抛出异常是否合适,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3694625/
从 CoerceValueCallback 抛出异常是否合适?如果给定值无效或应该只是 ValidateValueCallback用于DP值验证? 最佳答案 CoerceValue 确实应该用于修复一
我有一个控件(在下面的示例中名为 GridView)和一个 View 模型,它们通过它们的 SelectedValue 上的 2 路绑定(bind)进行绑定(bind)。属性(property)。我想
我正在开发 Windows Phone 8 应用程序。我在我的 UserControl 中使用 DependencyProperty。我发现 PropertyMetadata 的构造函数中的 Prop
我是一名优秀的程序员,十分优秀!