2014-09-19 9 views
0

Sqlite3 데이터베이스에서 제공되는 항목 목록을 표시하기위한 매우 간단한 창을 만들려고합니다. 내 개체의 일반 목록이 있고이를 Windows의 컨트롤에 바인딩하고 싶습니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?NSTableView에 사용할 NSArrayController에 바인딩 목록

.NET 창 형식 인 경우이 방법을 사용하면 Cocco와 동일한 기능을 수행 할 수 있습니까?

List<MyObject> dataSource = DataStore.GetLibraries(); public override AwakeFromNib() { base.AwakeFromNib(); dataSource = GetMyObjects(); myArrayController.Bind("contentArray", this, "dataSource", null); // Throws error }

을하지만이 오류가 발생합니다 : myBindingSource.DataSource = new List<MyObject>();

내 ViewController.cs 코드는 현재 다음과 같습니다이 클래스는 키 데이터 소스에 대한 코딩 호환 키 값이 아닙니다.

감사합니다.

답변

0

프레임 워크 (일반 : 링크 된 프레임 워크 및 라이브러리)에 libsqlite3.dylib를 연결하고 프로젝트에 데이터베이스 파일을 추가 한 후 데이터베이스 연결을 수행하고 쿼리를 사용하도록 sqlite 접근 자 클래스를 만듭니다.

프로젝트도 데이터베이스에 저장해야하는 경우 설치시 데이터베이스에 쓰기 권한이있는 위치에 배치해야합니다.이 위치는 iPhone 응용 프로그램의 경우 "Documents"- 폴더 또는 응용 프로그램의 경우 "Application MacOS X에서는 지원되지만 응용 프로그램 번들에서는 지원되지 않습니다.

질문의 핵심 인 것으로 보이는 어레이 컨트롤러에 쿼리 결과를 연결하려면 다음을 수행하십시오. 쿼리의 결과는 사과의 KVC 규칙에 따라 형식화해야합니다. 이 작업은 NSDictionary (객체 및 키 포함)를 만들고이 사전에서 읽을 배열 컨트롤러를 설정하여 수행됩니다.

내 자신의 프로젝트에서이 작업을 얻은 링크는 불행히도 삭제되었지만 필요한 세부 기능이 필요한 경우 다음 두 가지 자습서를 발견했습니다. a) sqlite 연결의 경우 : http://www.techotopia.com/index.php/An_Example_SQLite_based_iOS_4_iPhone_Application_(Xcode_4) b) NSArrayController를 사전과 연결하는 경우 : http://ihoneylocust.wordpress.com/2013/02/19/first-mac/