首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NStreeController - NSoutlineView获取单元格绑定对象

NStreeController - NSoutlineView获取单元格绑定对象
EN

Stack Overflow用户
提问于 2013-12-30 13:55:26
回答 1查看 332关注 0票数 0

我在NSoutlineView中有以下场景

代码语言:javascript
复制
ParentObject            [checkbox]
  - ChildObject 1       [checkbox]
  - ChildObject 2       [checkbox]

每个复选框都有一个绑定设置,该绑定设置为NSTreeController中相应对象的布尔值。当用户选中parentObject复选框时,还应设置相应的子复选框。但是,设置子对象复选框时,父对象复选框不应受影响。我似乎不能让父功能正常工作。

我目前尝试解决这个问题的方法是:当复选框被设置时,调用:

代码语言:javascript
复制
-(IBAction)CheckSelected:(NSButtonCell *)sender 
 {
     // Somehow access the cells bound object in the NSTreeController ?????
 }

然而,从我的研究来看,我还没有找到一种方法来访问NSTreeController中的单元格各自的对象。

对这个问题的任何见解都将非常感谢。我觉得这是人们在使用NStreeController时会遇到的一个常见问题,我很好奇我是否采取了正确的方法。

谢谢:)

EN

回答 1

Stack Overflow用户

发布于 2014-01-10 17:59:13

复选框不应该设置为调用操作-它们应该绑定到一个属性,比如“isChecked”。

在您的ParentObject中,您将拥有类似以下内容的代码:

代码语言:javascript
复制
- (void)setIsChecked:(BOOL)isChecked;
{
    _isChecked = isChecked;
    for (ChildObject *childObject in self.children)
        childObject.isChecked = isChecked;
}

由于子项的复选框也已绑定,因此子项的新状态将立即反映在大纲视图中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20834139

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档