Wpf 单击从第一个窗口打开的第二个窗口';s视图模型
我正在使用的软件有一个Wpf 单击从第一个窗口打开的第二个窗口';s视图模型,wpf,vb.net,mvvm,viewmodel,Wpf,Vb.net,Mvvm,Viewmodel,我正在使用的软件有一个main窗口,其中有几个按钮可以打开新窗口。每一个都应该有一个ViewModel 在MainWindowViewModel中,软件创建一些数据,例如ProList和summariesData。主窗口中打开新窗口的按钮之一是“显示栏”按钮。在MainWindowViewModel中,我将带有ICommand的“显示栏”按钮连接到一个实例化新窗口的方法。我使用显示栏按钮后面的代码打开新窗口 Dim wndSummariesObject = New WndSummaries wn
main窗口
,其中有几个按钮可以打开新窗口。每一个都应该有一个ViewModel
在MainWindowViewModel
中,软件创建一些数据,例如ProList
和summariesData
。主窗口中打开新窗口的按钮之一是“显示栏”按钮。在MainWindowViewModel
中,我将带有ICommand
的“显示栏”按钮连接到一个实例化新窗口的方法。我使用显示栏按钮后面的代码打开新窗口
Dim wndSummariesObject = New WndSummaries
wndSummariesObject.Show()
在相同的方法中,我实例化了ShowbarsViewModel
,以传递它需要处理的数据
WndSummariesViewModelObject = new WndSummariesViewModel(_ProfileList,
SummariesWndData) With {
.ProfileList = ProList,
.SummariesWndData = SummariesData
}
它显示构造函数将数据传输到ShowBarsViewModel
,但问题是当我单击ShowBar按钮中的一个按钮来操作其任务时,我丢失了之前从MainWindowViewModel
实例化和传输的所有变量值
我在哪里犯错
-------更新
当我想将第一个ViewModel的实例作为第二个ViewModel的构造函数的参数发送时,它具有相同的行为(使其为null) 问题在于,在Xaml中,我设置了ViewModels的一个实例。尽管我在构造函数中设置了参数,但是第二个ViewModel错误地使用了在Xaml中创建的那个
<Window.Resources>
<ViewModels:WndSummariesViewModel x:Key="WndSummariesVM"/>
<viewModels:ProViewModel x:Key="ProViewModel" />
</Window.Resources>
请发布一条消息。我看到的只是几个构造函数调用。我完全无法知道您代码的其余部分是什么。我正在尝试将在MainwindowViewModel中创建的数据传递给另一个Windows的ViewModel。构造函数将数据传递到第二个ViewModel,但当我在新窗口中按下按钮时,这些数据将变为null!。请帮帮我。我不知道我还需要包括什么。请点击我上面评论中的链接并阅读。根据你提供的信息,没有人能帮助你。