Cocoa CoreData绑定不持久化一个实体属性

Cocoa CoreData绑定不持久化一个实体属性,cocoa,core-data,persistence,cocoa-bindings,Cocoa,Core Data,Persistence,Cocoa Bindings,我有一个简单的表单,上面有3个文本框和一个弹出按钮。这些字段绑定到coredata实体(Account),该实体与第二个实体(AccountType)有一个关系。弹出按钮列表由AccountType实体填充,并绑定到Account.type关系。我还有一个保存按钮,它从表单控制器代码中保存当前实体 NSError *error; if (![[self managedObjectContext] save: &error]) { NSLog(@"Unresolved err

我有一个简单的表单,上面有3个文本框和一个弹出按钮。这些字段绑定到coredata实体(Account),该实体与第二个实体(AccountType)有一个关系。弹出按钮列表由AccountType实体填充,并绑定到Account.type关系。我还有一个保存按钮,它从表单控制器代码中保存当前实体

NSError *error;   
if (![[self managedObjectContext] save: &error]) {
    NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
}
除了我的一个文本框(称为textbox3)的内容之外,所有内容都可以保存到我的xml备份存储中。textbox1、textbox2和关系可以很好地保存到XML文件中,但textbox3没有保存任何内容,保存时也没有任何错误

如果我删除textbox3,除了textbox2之外,所有的东西都保存得很好。如果我改为将textbox3复制到表单上,那么同一个实体属性有两个绑定,textbox1、textbox2、textbox3,并且关系保持良好

以前有人见过coredata的这种行为吗


非常感谢您提供的任何帮助。

根据应用程序的设计,有多种方法可以做到这一点。AppKit UI元素实现了
NSEditor
,因此您可以使用
-committeediting
。我还看到人们转移<代码>第一个应答器<代码>强制字段编辑器提交,虽然我认为这是黑客攻击。p> 我在某种程度上理解了这一点,似乎属性没有被保存,因为在设置值时我没有从文本字段中切换。如果在输入值后我将tab键从textfield移开,则属性将使用新值设置。因此,在您离开textfield之前,绑定的属性值似乎不会更新,是否可以更改该行为以在textfield值发生更改时立即更新属性值?