XAML数据绑定忽略拼写检查

时间:2017-01-13 17:32:39

标签: c# xaml xamarin data-binding

我的XAML中有一个简单的双向绑定(iPad上的Xamarin Forms,如果重要的话):

<Entry x:Name="ProgramName" Text="{Binding ProgramName, Mode=TwoWay}"/>

在我的数据模型对象中,我有相关的'ProgramName'属性,以及一些调试,所以我可以看到发生了什么:

string m_programName;
public string ProgramName
{
    get { return m_programName; }
    set
    {
        Debug.WriteLine ("ProgramDataModel.ProgramName.set(\"" + value + "\")");
        if (value != m_programName)
        {
            m_programName = value;
            PropertyChanged?.Invoke (this, new PropertyChangedEventArgs ("ProgramName"));
        }
    }
}

除非iPad决定对我的输入进行拼写纠正,否则它会按预期工作。

如果我输入“Emptygg”然后关闭键盘输入窗格,屏幕显示我的文本输入字段现在包含“清空”,但控制台调试显示:

ProgramDataModel.ProgramName.set("")
ProgramDataModel.ProgramName.set("E")
ProgramDataModel.ProgramName.set("Em") 
ProgramDataModel.ProgramName.set("Emp") 
ProgramDataModel.ProgramName.set("Empt")
ProgramDataModel.ProgramName.set("Empty")
ProgramDataModel.ProgramName.set("Emptyg")
ProgramDataModel.ProgramName.set("Emptygg") 

我从未收到关于我的输入字段的最终拼写正确更改的通知。

0 个答案:

没有答案