2009-10-17 6 views
0

NSPopUpButtonCell을 사용하는 테이블 하나의 열이 있습니다. 내가 할 수있는대로 시도해보십시오. 원하는 방식으로 모든 것을 적절히 묶는 방법을 찾아 낼 수 없습니다. 다음은 내가하려는 일입니다.NSPopUpButtons를 포함하는 테이블 열 바인딩

'Field Values'라는 관리 대상 객체 컨텍스트에서 항목을 빼내는 NSArrayController가 있습니다. 이것은 각 항목 (즉, 사용 가능한 선택 목록)에 대한 팝업 메뉴를 채우는 데 사용됩니다. IB에서 셀을 선택하고 내용/객체/값을 'Field Values'.arrangedObjects 및 'Field Values'.arrangedObjects.name (표현 된 객체와 보이는 제목을 얻기 위해)에 바인딩하여 바인딩 할 수 있습니다.

그런 다음 각 열의 선택된 값이 컨트롤러 클래스의 배열에서 가져와 다른 NSArrayController에 다시 표시되도록 설정되어있는 방식으로 열을 바인딩하려고합니다.

지금까지 모든 팝업 메뉴에 사용 가능한 필드 목록이 포함되어 있고 각 필드에서 기본값이 선택되도록 설정했습니다. 실제로 항목을 선택해도 효과가 없습니다. 그러나 초기 값으로 다시 돌아갑니다. 또한 선택된 값으로 채워지거나 사용 가능한 모든 값의 이름을 포함하는 메뉴와 내가 추가 한 '없음'값의 -description을 포함하는 선택 항목과 같은 다른 변형을 찾아 냈습니다.

나는 아주 간단한 것을 놓치고있을 것이라고 확신하지만, 그것이 무엇인지 모르겠습니다. 아마도 이런 종류의 데이터 (즉, 콘텐츠 대 콘텐츠 개체 대 콘텐츠 값 것)를 바인딩하는 방법에 대해 내가 놓친 몇 가지 미묘한 점이있을 수 있지만, 지금 당장이를 볼 수 있다면 나는 망할 것입니다. 사전에

많은 감사 : 데이터 소스가 없습니다 코어 데이터를 기반으로하지만 오)는

답변

2

나는 테이블 뷰와 비슷한 설정을 가지고,하지만 난 당신이 그 수 재확인 수있는 한 가지를 보았다 미묘한 차이가 있습니다. 테이블 열에 대한 내 설치에서는 content, contentValues ​​및 selectedObject를 통해 테이블 ​​열 자체가 바인딩됩니다. 그러나 실제 NSPopUpButtonCell에서 바인딩을 대신 수행 할 수도 있습니다. 아마도 바인딩이 테이블 열에있을 때 작동하지만 실제 셀에있을 때는 작동하지 않습니다. 어쨌든 살펴볼만한 가치가있는 것이 하나 있습니다.

2

스크롤보기, 표보기 또는 셀에 절대로 바인딩하지 마십시오. 그러나 테이블 열에 항상 바인딩하십시오.

당신이 구속력이있는 것을 확신하기 위해 경감기 창 제목을보십시오.