当字段为空时,不会触发Xaml PropertyChange事件

时间:2012-10-18 18:25:21

标签: silverlight xaml

我有一个文本框作为过滤器,它带有一个数字值

<TextBox Grid.Row="0" Grid.Column="5" Text="{Binding CourseNumber, Mode=TwoWay}"></TextBox>

默认情况下,页面加载时设置为0。如果我点击搜索,我会带回预期的内容。如果我然后在此文本框中输入204,我会得到相应的项目 - 只有那些课程编号为204的项目。

然后,如果我在这里删除任何内容 - 所以它现在为空并单击搜索它仍然保持这个204值。当我清空此字段或清空字段并将其关闭时,不会触发属性更改事件。

    private int _courseNumber;
    public int CourseNumber
    {
        get { return _courseNumber; }
        set
        {
            SetObject(ref _courseNumber, value, "CourseNumber");
            if (_courseNumber!= null)
            {
                OnPropertyChange("CourseNumber")
            }
        }
    }

我可以在插入其他数字时触发此属性更改事件 - 只是当我从此字段中删除所有数据时

为我们修复 我们将此属性更改为字符串而不是int - 然后将其转换为我们的搜索方法 - 这非常有效。

0 个答案:

没有答案