我的基于文档的核心数据应用程序(使用IB中的绑定)有两个实体,员工(具有 employeeName 属性)和 TimeSheet (使用 timeDescription 和 entryDate 属性)。 员工与时间表有一个( employeeDetails ) - 多人( employeeTimeSheet )关系。
我正在为TimeSheet条目构建Master-Detail设置。
对于Master我有一个一列tableView,它的值绑定到: EmployeeController (一个使用Employee实体的NSArrayController), arrangeObjects < / strong>, employeeName 。
我有一个detailController(另一个NSArrayController),它被设置为NSMutableDictionary,它的 contentSet 绑定到 EmployeeController ,选择, employeeTimeSheet
然后我有Detail tableView,它有三列,各自的值绑定到 DetailController , arrangeObjects , employeeDetails.employeeName (第0列), entryDate (第1列)和 timeDescription (第2列)。
现在一切正常,我可以从主表中选择一个员工,详细信息表显示与该员工关联的所有TimeSheet条目。我可以使用所选的员工添加条目,一切都很好。
我的问题是,我没有将tableView作为主视图,而是想要一个NSPopupButton,我可以从中选择一个Employee并查看与该Employee关联的所有时间条目。
我已尝试将内容,值,arrangeObjects,selectedObject等的每个组合与我拥有的每个控制器组合,但无法使NSPopupButton以与单列tableView类似的方式运行。
我徒劳地搜索了有关这方面的更多信息,并多次阅读绑定文档,但只是不断混淆。我觉得这应该相对简单,但我似乎无法得到它。在张贴到这里之前,我已经绞尽脑汁将近两天了。
有谁可以指出我哪里出错了?我会发布代码,但这并不适合看到它主要是IB的事情。
比利。
答案 0 :(得分:1)
顺便说一句:detailController将“自动”填充新的员工对象。确保将“managedObjectContext”设置为同一个控制器(employeeController)。
答案 1 :(得分:0)
好的,我找到了。我知道在这里张贴之后我会马上发现它。
我将NSPopupButton 内容绑定到 EmployeeController , arrangeObjects , contentValue 到 EmployeeController , arrangeObjects , employeeName , selectedIndex 到 EmployeeController , selectionIndex 。< / p>
效果很好。
比利。