"key contains $value"是什么意思?



我有一个NSSearchField绑定到一个NSDictionaryController。在我的搜索字段的谓词格式,我有这样的代码key contains $value和它的意思是什么?谓词格式(代码行数)还有哪些其他替代方案?谢谢!

快速搜索文档可以找到谓词编程指南中的这一章:

变量用$表示(例如$VARIABLE_NAME)。

我没有看到任何地方明确提到它,但其含义是标识符不是前缀的$被视为键-即。,通过键值编码检索。谓词将匹配字典控制器中值为key

的对象。
CONTAINS
左边的表达式包含右边的表达式

包含 $value的值。

那么$value是什么呢?Cocoa绑定参考解释:

多值谓词绑定允许您创建一个搜索字段弹出菜单,该菜单预先填充了与谓词过滤器对应的菜单项。每个谓词绑定对应于搜索字段弹出菜单中的一个条目。这个多值绑定被NSSearchField谓词绑定使用。

显示名称字符串用作菜单项标题。谓词格式是一个字符串,它使用谓词编程指南中描述的谓词格式为该菜单项指定谓词。任何在谓词格式字符串中出现的字符串$value将被替换为搜索字段的内容。

换句话说,NSSearchField为它的谓词预定义了变量value,作为保存当前字段中的任何文本的变量。,用户正在搜索的文本。

因此,例如,如果您创建了一个格式为name contains $value的谓词,并且用户搜索"Emily",那么该谓词将匹配name包含(作为子字符串)字符串"Emily"的那些对象。

key表示字典的Key, $value表示NSSearchField中输入的值。

如果要搜索更多字段,可以使用||和&&

我发现了!对于谓词格式,我只需要输入

value contains $value

让它工作。现在我明白了!谢谢大家的帮助!!

foreach (var item in dictionary) {
   cellValue.Text = item.Value.ToString();
}

相关内容

  • 没有找到相关文章

最新更新