我对WPF和MVVM意识形态非常陌生,并且正在使用它创建应用程序。因此,据我了解,通过阅读此WPF-MVVM Pattern Guide,我们获得了:
要从View1切换到View2,在View 1中,我们可能将一个Command附加到一个告诉我们加载View2的按钮上,
VIEW1
<StackPanel>
Button<
Command="{Binding DoSomeWorkInModalView1}"
/>
</StackPanel>
<StackPanel Visibility="{Binding VariableInModalView1ThatNeedsToBeSet, Converter={StaticResource BooleanToVisibilityConverter}}">
Button<
Command="{Binding MethodThatLoadsView2}"
/>
</StackPanel>
MODALVIEW1
DoSomeWorkInModalView1(){
//Doing some work here...
VariableInModalView1ThatNeedsToBeSet = true;
}
或类似的东西。按下按钮后,ViewModal1会执行一些工作并将VariableInModalView1ThatNeedsToBeSet
设置为true,因此我们可以看到我们的按钮,现在可以按下它进入View2。太好了,所有这些在我的应用程序中都有效。
我需要做的是当该StackPanel变得可见时,调用MethodThatLoadsView2
而不必按下按钮。换句话说,将VariableInModalView1ThatNeedsToBeSet
设置为true时,我们将加载View2而不是等待用户按下按钮,就像在React中一样,useEffect()可以立即用于执行一些逻辑加载组件时。
抱歉,这有点含糊,如果您有任何疑问,请告诉我。谢谢!