此例子实现了不用Array Controller,基于view-based tableview实现添加和删除。当然,也可以用Array Controller实现,这样可以省去NSTableViewDelegate和NSTableViewDataSource的实现。从这个例子开始,以后不再采用cell-based tableview了,因为这类型的tableview是没办法添加图片,会被淘汰。之后默认是view-based tableview。关于cell-based tableview的NSTableViewDelegate和NSTableViewDataSource自定义,可以参考Chapter 06 - Todo(C#实现)。
好了,布局和上一个例子一样。如何创建RMDocument类,请参考上一个例子。但是关于tableview和table cell view,有一些属性要添加。
tableview添加Multiple
table cell view自定义column的identifier,建议保持和属性Export的名字一致。
table cell view添加可编辑属性。
现在看看RMDocument类下的数据定义。其中employees的setter和getter不用遵循命名格式(因为我们不会用到Array Controller)。我只是不想改了。
TableViewDataSource自定义类(注意通过xcode绑定)。document是RMDocument类object通过xcode绑定到TableViewDataSource下的一个outlet。
view-based tableview不再在NSTableViewDataSource里面实现cell的数据了,而是在TableViewDelegate中实现(注意通过xcode绑定)。
看看效果图(支持多选删除)。
标签:Chapter,NSDocument,based,tableview,C#,cell,实现,添加,view From: https://www.cnblogs.com/dalgleish/p/16601041.html