我正在尝试使用C#设计MVVM WPF应用程序,我需要一些提示并建议设计我需要的MVVM模型。
从技术上讲,这是一个基于地图的应用程序,它允许用户在MapView
容器内覆盖一些不同的层。其中一些层仅用于呈现目的,但其他一些层具有编辑功能。
现在我的问题是我是否必须为所有叠加类创建相同的MVVM模式?在这种情况下如何将每个视图加载到地图
- Models
MapModel.ca
BaseMapModel.cs
GraphicsModel.cs
GDBModel.cs
- ViewModels
MapViewModel.cs
BaseMapViewModel.cs
GraphicsViewModel.cs
GDBViewModel.cs
- Views
MapView.cs
BaseMapView.cs
GraphicsView.cs
GDBView.cs
现在我所拥有的是MapViewModel.cs
;
class MapViewModel
{
private Map map;
public Map Map
{
get { return map; }
set { this.map = value; }
}
public MapViewModel()
{
this.map = new Map();
}
}
在MainWindows.xaml.cs
我有
public MainWindow()
{
InitializeComponent();
var viewModel = new MapViewModel();
this.DataContext = viewModel;
}
在MainWindows.xaml
我有
<Grid>
<esri:MapView x:Name="MyMapView" Map="{Binding Map}"/>
</Grid>
现在令我困惑的是如何将新视图添加到MapViewModel.cs
?