へのNSSearchFieldバインドがありNSDictionaryControllerます。私の検索フィールドの述語形式には、次のようなコードがありますが、これkey contains $valueはどういう意味ですか? 述語形式 (コード行) には他にどのような選択肢がありますか? ありがとう!
4 に答える
ドキュメントをすばやく検索すると、述語プログラミングガイドのこの章が表示されます。
変数は
$(たとえば$VARIABLE_NAME)で示されます。
明示的に言及されている場所はどこにもありませんが、接頭辞がaでない$識別子はキーとして扱われる、つまりKey-Valueコーディングによって取得されるという意味です。述語は、値が key…</p>
の辞書コントローラーからのオブジェクトと一致します。
CONTAINS- 左側の式には右側の式が含まれています。
…の値が含まれ$valueています。
では、それでは何$valueですか?Cocoaバインディングリファレンスは次のように説明しています。
複数値の述語バインディングを使用すると、述語フィルターに対応するメニュー項目が事前に入力された検索フィールドのポップアップメニューを作成できます。各述語バインディングは、検索フィールドのポップアップメニューのエントリに対応しています。この複数値バインディングは、NSSearchField述部バインディングによって使用されます。
表示名の文字列は、メニュー項目のタイトルとして使用されます。述語形式は、「述語プログラミングガイド」で説明されている述語形式を使用して、そのメニュー項目の述語を指定する文字列です。述語形式の文字列に出現する文字列
$valueはすべて、検索フィールドの内容に置き換えられます。
つまり、NSSearchFieldはvalue、その述語の変数を、現在フィールドにあるテキスト、つまりユーザーが検索しているテキストを保持するものとして事前定義します。
したがって、たとえば、形式で述語を作成し、ユーザーが「Emily」を検索した場合、その述語は、文字列「Emily」を(サブストリングとして)含むname contains $valueオブジェクトと一致します。name
key辞書のキーを$value表し、に入力された値を表しますNSSearchField。
より多くのフィールドから検索するには、||を使用できます。および&&は述語形式です。
なんとなく分かった!I 述語形式の場合は、入力するだけです
value contains $value
それが機能するために。今分かります!助けてくれてありがとう!!!
foreach (var item in dictionary) {
cellValue.Text = item.Value.ToString();
}