Silverlight 字段为空时未激发Xaml PropertyChange事件
我有一个文本框作为过滤器,它接受一个数字值Silverlight 字段为空时未激发Xaml PropertyChange事件,silverlight,xaml,Silverlight,Xaml,我有一个文本框作为过滤器,它接受一个数字值 <TextBox Grid.Row="0" Grid.Column="5" Text="{Binding CourseNumber, Mode=TwoWay}"></TextBox> 我可以在插入其他数字时触发此属性更改事件,但在我删除此字段中的所有数据时不会 为我们解决问题 我们最终将此属性更改为字符串而不是int-然后在搜索方法中强制转换它-这非常有效。您也可以使用可为null的intint?。(当然,您需要删除提升OnP
<TextBox Grid.Row="0" Grid.Column="5" Text="{Binding CourseNumber, Mode=TwoWay}"></TextBox>
我可以在插入其他数字时触发此属性更改事件,但在我删除此字段中的所有数据时不会
为我们解决问题
我们最终将此属性更改为字符串而不是int-然后在搜索方法中强制转换它-这非常有效。您也可以使用可为null的int
int?
。(当然,您需要删除提升OnPropertyChanged
的空检查。
private int _courseNumber;
public int CourseNumber
{
get { return _courseNumber; }
set
{
SetObject(ref _courseNumber, value, "CourseNumber");
if (_courseNumber!= null)
{
OnPropertyChange("CourseNumber")
}
}
}