摘要:
看本系列之前,请下载《苹果开发之Cocoa编程原书第4版》这书。这本书是用objective-c编写,但是为了更好展示C#的跨平台性,书中所有的Cocoa代码全部用C#实现。大家可以用这个作为MacOS C#界面编程的入门。每个系列完成后,我都会把vs项目的代码打包上传。这样方便大家直接研究源代码。 阅读全文
摘要:
文章是基于之前的RaiseMan的例子修改的。为了避开申明Person类型和复杂的手动实现value key & value & remove & add的redo/undo,所以本例子采用CoreData + ArrayController + NSPersistentDocument,至于如何编 阅读全文
摘要:
好了,准备工作都做好了。至于布局,这里就不详解了,按照书上的来就行了。我们正常建立Document的程序,然后把NSDocument改成NSPersistentDocument,如图。 记住添加自动保存功能autosavesInPlace,和之前一样。如图。 布局我就简单截个图,关于绑定,请务必按照 阅读全文
摘要:
在Xamarin.Mac中,没有导出NSPersistentDocument这个类,但是这个类在AppKit库中已经实现了,因为要像书上一样绑定managedObjectContext这个变量,但是NSDocument类中是没有实现的,所以自己导出。方法如下: 1. 创建导出库 2. 通过xcode 阅读全文
摘要:
这个例子是在Chapter 09 - NSUndoManager 上继续实现的。所以大家要看前面的例子。 xcode布局改变,记住给MainMenu.xib下的Open菜单项添加openDocument:操作 关于PersonModel类添加decode和encode函数 在RMDocument类下 阅读全文
摘要:
此例子针对NSDocument实现了tableview 每一行添加/删除的undo/redo,以及每一个单元格内容编辑的undo/redo。基于NSDocument类的实现。PersonModel + NSMutableArray和前面的例子是一样的,就不重复贴了。采用Array Controlle 阅读全文
摘要:
此例子实现了不用Array Controller,基于view-based tableview实现添加和删除。当然,也可以用Array Controller实现,这样可以省去NSTableViewDelegate和NSTableViewDataSource的实现。从这个例子开始,以后不再采用cell 阅读全文
摘要:
这个例子使用View-based tableview绑定Array Controller,其中Array Controller的remove action在View-based tableview下,选中则默认删除第一行的数据,不选中则默认删除最后一行(而cell-based tableview则可 阅读全文
摘要:
这个代码主要展示如何绑定Array Controller到Cell-based Tableview。在发代码前,需要注意几点。 1. Person为自定义的class,但是一定要Register为PersonModel。 格式{自定义class}Model。 2. NSMutableArray对象, 阅读全文