我有一个大的Silverlight应用程序,它被分为“选项卡”,每个应用程序进一步划分为子选项卡。 xap文件下载时间不会太长,第一个屏幕是登录。登录后,应用程序的RootVisual设置为我的“mainPage”,其中包含我的所有主要选项卡。由于每个子选项都包含子选项卡,并且每个子选项卡都包含我的图形用户控件,因此在加载主页面时,我的应用程序基本上都会加载每个ui组件。因此,当我的主页加载我的应用程序的所有用户控件时,登录“冻结”约30秒。拆分它的最佳方法是什么,以便在初始化时不加载整个应用程序的ui?我想不是调用每个控件InitializeComponent()直到它的父选项卡实际被点击?或者在点击之前不加载主标签的“子标签”?当然必须有更好的方法来解决这个问题。
答案 0 :(得分:0)
当您使用tabcontrol时,Silverlight会自行处理这些事情。在选择TabItem之前,它不会呈现控件。确保您没有在任何控件的构造函数中编写任何代码。所有代码都应该是任何cotrol的Loaded事件,无论是用户控件/自定义控件,因此您将能够提高应用程序的性能。
如果您仍有同样的问题,请与我们联系。
干杯! 维诺德