【发布时间】:2013-11-03 14:22:26
【问题描述】:
我如何绑定/连接到不同的视图,它们有自己的视图模型?
我有一个包含用户控件/视图的主窗口。它们中的每一个都有自己的 viewModel。第一个视图就像一个控制面板,带有一个用于向应用程序输入输入参数的表单。另一种是画布,根据控制面板上的输入参数显示分析结果。
例子:
主窗口:
<StackPanel Orientation="Horizontal" Margin="0,20,0,0">
<local:ControlView />
<local:CanvasView />
</StackPanel>
控制视图:
<StackPanel Orientation="Horizontal">
<Label Content="Length: " Margin="19,0,0,0"/>
<TextBox Margin="3" Width="130" Text="{Binding Path=Box.Length}"/>
</StackPanel>
<StackPanel Orientation="Horizontal">
<Button Margin="10" Content="Draw Canvas" Command="{Binding Path=DrawCanvasCmd}"/>
</StackPanel>
按钮触发 ControlViewModel 中的 DrawCanvas 方法。然后调用该方法,我希望根据输入绘制画布。画布的绘制在 CanvasViewModel 中完成。
谁能看到这是怎么做到的?我可以使用 CanvasViewModel 构造函数中的静态值来绘制画布,即,我只需要将输入参数从控制面板发送到画布即可。
public void CanvasViewModel()
{
GeometryFigure.length = 120;
}
【问题讨论】:
标签: wpf mvvm view binding viewmodel