我有一个文本框作为过滤器,它采用数字值
<TextBox Grid.Row="0" Grid.Column="5" Text="{Binding CourseNumber, Mode=TwoWay}"></TextBox>
默认情况下,页面加载时设置为 0。如果我点击搜索,我会带回预期的内容。如果我然后在此文本框中输入 204,我会得到适当的项目 - 只有那些 courseNumber 为 204 的项目。
然后,如果我在这里删除任何内容 - 现在它是空的,然后单击搜索,它仍然保留这个 204 值。当我清空该字段或清空该字段并将其关闭时,不会触发属性更改事件。
private int _courseNumber;
public int CourseNumber
{
get { return _courseNumber; }
set
{
SetObject(ref _courseNumber, value, "CourseNumber");
if (_courseNumber!= null)
{
OnPropertyChange("CourseNumber")
}
}
}
我可以在插入其他数字时触发此属性更改事件 - 只是当我从该字段中删除所有数据时不会
为我们修复我们 最终将此属性更改为字符串而不是 int - 然后将其转换为我们的搜索方法 - 这非常有效。