关于Lightswitch HTML5详细信息选择器的文档here:
自动完成框上的搜索字符串至少需要3个字符才能触发搜索操作,并且结果窗格中会显示前15个结果。如果用户希望查看实体中的所有条目(在我们的情况下是客户),他们可以通过单击“+”按钮来执行此操作,这将显示传统的详细模式选择器对话框。
有没有办法将15个结果限制更改为其他数字?
答案 0 :(得分:1)
虽然15个结果限制被硬编码到LightSwitch库中,但由于Microsoft提供了此库的源代码,因此可以轻松修改。
虽然对许多更高级的LightSwitch开发人员来说,微软LightSwitch库的这种修改并不常见,但如果你决定实现这一点,你需要彻底测试任何变更。不良副作用。此外,如果您升级LightSwitch的版本,则需要在新版本中重复库修改。
如果您要进行此更改,则需要通过在HTML客户端的default.htm文件中进行以下更改来引用LightMwitch库的未缩小版本(从库脚本引用的末尾删除.min:
<!--<script type="text/javascript" src="Scripts/msls-?.?.?.min.js"></script>-->
<script type="text/javascript" src="Scripts/msls-?.?.?.js"></script>
上面一行中的问号将与您正在使用的LightSwitch版本有关。
然后,您需要找到并更改Scripts / msls中的硬编码引用 - ?。?。?。js文件,如下所示:
if (applySearchFilter) {
search = me.search;
//itemLimit = 15;
itemLimit = 30;
}
或者,如果您想在此增强功能中引入灵活性元素,则可以对Scripts / msls进行以下修订 - ?。?。?。js文件:
//if (visualCollection._loader._itemLimit !== itemLimit) {
// visualCollection._loader._itemLimit = itemLimit;
//}
if (!visualCollection._loader._itemLimit) {
visualCollection._loader._itemLimit = itemLimit;
}
然后,根据具体情况,您可以在DetailsPicker的postRender例程中实现以下语句:
myapp.AddEditScreen.DetailsPicker_postRender = function (element, contentItem) {
// Write code here.
contentItem.choicesSource._loader._itemLimit = 30;
};