我有一个设计问题:在数据透视图(三个“页面”)中,我有很多绑定。好吧,每个数据透视视图中约有12个项目(TextBox,Map ...)。
我意识到这些绑定正在减缓我的观点的负担。但是我的枢轴的第一个“页面”上的绑定是唯一需要加载的。我可以放一个进度指示器并加载一个线程或其他我的其他数据(事实上,绑定的数据将仅在HTTPWebRequest之后设置)。
如何判断我的申请?像“onLoadPageX:bind items”
非常感谢,我不知道我是否清楚
答案 0 :(得分:1)
您应该可以为每个RoutedEventHandler的Loaded事件添加PivotItem。加载特定PivotItem
页面时会触发此事件;当页面卸载时,还有一个相应的Unloaded
事件,以防您需要释放任何资源。
答案 1 :(得分:0)
你的问题很模糊,但是有很多选项可以显示加载状态,延迟绑定并在数据透视中有很多控件:
如果您需要做任何可能需要花费时间的事情,那么请从UI线程开始。
如果您正在做一些需要时间的事情,那么您应该向用户显示正在发生的事情。这可能是一个消息或动画,取决于可能的时间段和应用程序的其余部分。
如果您的内容高度依赖于从网络加载的数据,请确保在无法加载数据时有适当的超时。如果没有可用的数据连接,也会收到有用的消息。
如果您的用户界面高度依赖于外部加载的详细信息,则可以在知道需要显示的内容后将控件添加到用户界面。
如果UI始终具有相同的控件但内容不同,则可以考虑将数据绑定到具有占位符内容的对象,该内容在从Web服务下载相关信息时会更新。
如果您的数据透视表中有很多项目,您应该考虑取消单个项目的加载,以便在需要之前不加载它们。仅加载显示的项目旁边的项目数据。通过这种方式,它们可以预先加载到用户身上,但可以减轻对系统的影响。