3

いくつかのデータソースへのフィルターとして機能する を開発しようとしています。たとえば、テーブルを埋めるNSPopUpButtonとしましょう。NSArrayController

NSArrayControllerメニューから選択キーパスにバインドできるので、データが適切にフィルタリングされますが、問題ありません。

トリッキーな部分は、このコンテンツをバインディングNSPopUpButtonの使用に依存させたいのですNSArrayControllerが、「すべて表示」メニュー項目、または少なくともコアデータからのものではなく、いくつかの特別な機能を実行する項目を追加したいということですバインディングとコア データを使用してテーブルをフィルタリングする以外のアクション。

メニューの最後の項目は特別なNSPopUpButtonアクションを実行しますが、他の項目は結果をフィルタリングするだけです。

NSArrayControllerコアデータに依存しないこのカスタムメニュー項目を追加するためにバインディングを台無しにする方法はないと信じているため、バインディングを忘れてすべてをプログラムで行うというアプローチであることを理解していますが、 Apple Docsで何かを見つけました。ここで、私の考えを共有したいと思います...何かアイデアはありますか?

4

1 に答える 1

12

NSContentPlacementTagBindingOptionを探しているように聞こえます。

NSPopupButtonにアタッチされているNSMenuを次のように編集します

ポップアップメニューボタンのメニューの設定

次に、アレイコントローラのコンテンツに置き換えたいNSMenuItemの設定を編集して、意味のあるタグが関連付けられるようにします。

バインディングによって動的に置き換えられるアイテムの設定

次に、そのタグを、content /content*バインディングのNSPopupButtonのバインディングのコンテンツ配置タグ値として指定します。

ポップアップボタン自体のバインディング

于 2012-07-19T23:22:45.600 に答える