NSPopupButtonCell绑定问题

时间:2011-03-16 11:37:03

标签: cocoa binding master-detail nspopupbuttoncell

我正在尝试实现与Apple Master-Detail pop-up cell example类似的功能,但绑定对我来说似乎不起作用。

我的应用程序允许用户建立舞台剧;所以我有acts的表格视图。每个行为都可以有一个lines列表,因此行为表视图会驱动行的第二个表视图(因此选择第一个动作将使用该行的行更新行表视图)。

此设置似乎正常。

每一行当然都是由一个字符说出来的,所以我的文档对象有一个characters列表以及一个行为列表。我想要的是我的行表中的弹出单元格,其值来自characters数组。

所以我按照Apple教程中的步骤操作,但它不起作用......

  • 如果我将表格视图列的content绑定到CharactersController.arrangedObjectsselectedObject绑定到LinesController.arrangedObjects.character,则绑定有效(当我从pop中选择一个值时) -up它使用新角色更新基础line对象,列表显示<Character ...>条目
  • 如果我然后将列的contentValues绑定到CharactersController.arrangedObjects.name,那么当我运行应用程序时出现以下调试错误:

    2011-03-16 11:28:49.783 ScriptPreparer[5176:903] Cocoa Bindings: 
    Error setting value <Character: 0x100144f60> of object 
    <NSPopUpButtonCell: 0x100153ff0> through binding selectedObject
    
  • 如果我删除selectedObject绑定,那么我仍会在列表中获得<Character...>输出。

似乎contentValues绑定是破坏的。我做错了什么?

这是我的绑定: enter image description here

1 个答案:

答案 0 :(得分:1)

我发现了问题所在 - 我在NSTableView以及表列和NSPopupButtonCell上设置了绑定,这导致了奇怪的事情发生。

我的结论是任何不在表列上的表绑定都是错误的