【问题标题】:Connect NSOutlineView/NSTreeView into an NSArrayController?将 NSOutlineView/NSTreeView 连接到 NSArrayController?
【发布时间】:2011-06-06 20:05:01
【问题描述】:

我正在尝试将绑定与 NSOutlineView 一起使用。

我看不到如何通过绑定将“当前选定的项目”连接到其他任何东西

我试过了:

  • 直接使用NSOutlineView,绑定到 “选择”(不起作用;看着 文档,Apple尚未实施 那个绑定)
  • 使用 NSArrayController,绑定到“arrangedObjects”,并绑定 NSAC 到 NSOV 的“selectedRowIndexes” (不起作用;你得到一个奇怪的 错误消息“NSSet 不能 从 NSIndexSet 创建”;(为什么不呢? 当然,一个是 其他?)

【问题讨论】:

    标签: cocoa cocoa-bindings


    【解决方案1】:

    您不要将NSArrayController 用于大纲视图,而是使用NSTreeController。然后,如果您想访问选择,只需绑定到 yourTreeController.selectedObjects

    NSArrayController 用于NSTableViewNSTreeController 用于NSOutlineView

    Apple 有 a great example 展示如何使用 NSOutlineViewNSTreeController

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 我可以通过谷歌找到的所有教程都声称它没有。查看您提供的链接,我仍然看不到如何以任何其他控制器可以使用的方式获得选择 - 我将编辑问题,谢谢
      • 您可以将 selectionIndexPaths 绑定到一个 NSArray 属性,这是您可以找到选择的地方。
      • 所以,我最终会得到: NSOutlineView.selectionIndexPaths -绑定到我的某个类上的 NSArray 实例 -绑定到- NSArrayController ?
      • 不,(如果我没记错的话),你将它绑定到你的某个类的 NSArray 属性。就是这样。对于实际内容,您将其绑定到 NSTreeController 对象
      • ...但我需要在标准绑定中获取其他 GUI 元素可以使用的输出 - 因此我认为我需要在数组顶部有一个单独的 NSArrayController ?还是不可能对单个对象进行双向绑定?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多