我有一个使用多个标签的Silverlight 4应用程序。在选项卡1上,我允许用户从网格中选择项目,右键单击并选择一个上下文菜单项,将项目发送到选项卡2上的不同网格。但是,如果用户尚未单击选项卡2,则网格I我试图添加项目尚不存在。
即使用户尚未选择标签,确保第二个网格上的所有对象都被实例化的最优雅方法是什么?
谢谢,
-Scott
答案 0 :(得分:0)
假设您要将项目添加到某种数据网格中,那么可以选择将项目添加到ObservableCollection
,然后数据将网格绑定到集合。
这样您就不必担心网格是否实际可见,并且当网格变得可见时它会自动更新。
答案 1 :(得分:0)
您可以使用MVVM模式,而不是尝试使用尚不存在的数据预先填充tab2上的网格。
Tab1可以是viewModel1的view1。对于viewModel2,Tab2可以是view2。当view1更新viewModel1时,ViewModel1会更新ViewModel2,而ViewModel2会更新view2。然后,您只需要为visibility,isEnabled和ItemsSource属性设置绑定。