我有一个文本字段,可以手动编辑,也可以通过另一个控件设置。(它是一个页码,因此您可以通过键入16跳转到第16页,或者可以使用next/prev按钮上下翻页)我将文本字段的值绑定到一个int page变量。
它似乎工作正常,当您键入页码时,它会跳转,当您上下翻页时,文本框中的页码会相应地更改。
然而,在某种程度上,当我上下翻页时,文本框似乎并不知道它的值已经改变,因为如果我输入1,它不会做任何事情。它不会调用绑定的set-method或其他任何东西。看起来文本字段在想“我已经是1了,所以我不需要做任何事情。”即使是5次,因为我接下来的4次。如果我键入的数字不是1,它就会出现在那里。如果我输入1,它会转到第1页,因为现在它认为它在另一个页面上。
问题似乎是我正在以编程方式更改文本字段的值,但某些部分没有收到消息。
这看起来是一个合理的解释吗?不管怎样,你知道是什么原因造成的吗?
谢谢
发布于 2010-04-14 05:20:54
解决方案:为了让文本字段正常运行,我需要通过绑定的实例变量来完成所有操作。
问题是“页面”实例变量实际上并不存在,有一个页面方法和一个setPage方法,但实际的页面保存在其他地方。当我确保从下一个/prev代码中调用setPage方法时,它似乎可以工作。
https://stackoverflow.com/questions/2633083
复制相似问题