WPF中几乎没有可交换的形式 - 可能吗?

时间:2011-10-16 16:01:37

标签: wpf

我的WPF应用程序中几乎没有基本视图,但我不希望以可视方式设计其中一个和其他编程方式。

设计少量表单的最佳方法是什么,并且只能在主窗口中以编程方式进行交换?

编辑:当然,我不想关闭/打开新窗口;)

1 个答案:

答案 0 :(得分:1)

通常我有ShellViewModel包含CurrentViewModel,并将CurrentViewModel显示为ContentControl ShellView。然后,要切换页面,您只需更改CurrentViewModel

中的ShellViewModel属性即可

ShellView:

<ContentControl Content="{Binding CurrentViewModel}" />

ShellViewModel:

private ViewModelBase _currentViewModel;
public ViewModelBase CurrentViewModel
{
    get { return _currentViewModel; }
    set
    {
        if (_currentViewModel != value)
        {
            _currentViewModel = value;
            RaisePropertyChanged("CurrentViewModel");
        }
    }
}

您可以看到它的示例here