2012-05-02 41 views
0

我有MVVM建立了一个WPF桌面应用程序,都在MainWindow.xaml提供意见。问题在于按照它们在Window.Resources中出现的顺序列出视图,每个视图都横跨屏幕。我想要2个视图并排显示在主窗口中。在MVVM的主视图中使用MVVM并排显示位置视图?

为了澄清,有一个包含一个树的可视化,并且是2个扩展器可打开和显示从选项卡内信息旁边的tabcontrol图。因为该应用列出了扩展器在选项卡区域下的视图。我希望他们躺在旁边并弹出(部分遮挡)选项卡。

该得到的ObservableCollection的ViewModels(MainWindow.xaml):

<ItemsControl Grid.IsSharedSizeScope="True" ItemsSource="{Binding ViewModels}" 

和他们在主窗口ViewModel类正是如此说:

SearchExpanderViewModel viewModel6 = new SearchExpanderViewModel(decisiontreeRepository); 
    this.ViewModels.Add(viewModel6); 

如何把2次并排主窗口视图,当我不能把它们放在一个网格?

在此先感谢!

编辑:截图 我无法添加,因为声誉的图像或什么,请看这里:http://imgur.com/7y1yj

+1

请截图。 – Jon

+0

请更改标题;你没有定位ViewModels –

回答

0

这是对“坐标”添加到这些行mainWindowViewModel:

ExpandersViewModel expanderStackpanelViewModel = new ExpandersViewModel(2,1,1,1, 
decisiontreeRepository); 
this.ViewModels.Add(expanderStackpanelViewModel); 

,并在XAML文件使用一个网格,并添加行和列的getter和setter的视图模型的特定视图:

public class PathExpanderViewModel : ViewModelBase{ 
    public int Row { get; set; } 
    public int Col { get; set; } 

    public PathExpanderViewModel(int row, int col){ 
     Row = row; 
     Col = col; 
    } 
} 

我希望这可以帮助其他人有同样的问题,但它仍然不是100%清楚:)