0

我正在使用 MVVM Light,我不知道如何在 ViewModel 中获取所有视图,如果我使用 arquitecture ViewModel => View 是可能的。

public MyViewModel : ViewModelBase
{
    public MyViewModel()
    {
        View = new AView();
    }

    public UIElement View { get; set; }
}

<UserControl x:Class="AView">
</UserControl>

但是现在我不能切换。

我想导出(EXCEL、PDF 等)所有 UserControl(视图),现在在 MVVMLight 我有 View => ViewModel:

<UserControl
    DataContext={Binding MyViewModel, Source=StaticResource Locator} >
</UserControl>

提前谢谢了。

4

1 回答 1

0

您可以View像这样在后面的视图代码中设置属性:

public MyView : UserControl
{
    public MyViewModel ViewModel { get { return (this.DataContext as MyViewModel); } }
    public MyView()
    {
        InitializeComponent();
        this.Loaded += onLoaded;
    }
    void onLoaded(object sender, RoutedEventArgs e)
    {
        ViewModel.View = this;
    }
}
于 2013-06-05T08:01:07.423 回答