Files
aistudio-wpf-diagram/AIStudio.Wpf.DiagramDesigner.Test/ViewModels/MainWindowViewModel.cs

63 lines
1.9 KiB
C#
Raw Normal View History

2022-11-30 19:07:40 +08:00
using System;
using System.Collections.Generic;
2022-11-30 22:28:22 +08:00
using System.Linq;
2022-11-30 19:07:40 +08:00
using System.Text;
using System.Windows;
namespace AIStudio.Wpf.DiagramDesigner.Test.ViewModels
{
class MainWindowViewModel : BindableBase
{
public ToolBoxViewModel ToolBoxViewModel
{
get; private set;
}
public DiagramViewModel DiagramViewModel
{
get; private set;
}
protected IDiagramServiceProvider _service
{
get
{
return DiagramServicesProvider.Instance.Provider;
}
}
2022-11-30 22:28:22 +08:00
public SelectableDesignerItemViewModelBase SelectedItem
{
get
{
return DiagramViewModel.SelectedItems?.FirstOrDefault();
}
}
2022-11-30 19:07:40 +08:00
public MainWindowViewModel()
{
ToolBoxViewModel = new ToolBoxViewModel();
DiagramViewModel = new DiagramViewModel();
DiagramViewModel.ShowGrid = true;
DiagramViewModel.GridCellSize = new Size(100, 60);
2022-11-30 22:28:22 +08:00
DiagramViewModel.GridMargin = 0d;
2022-11-30 19:07:40 +08:00
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
DiagramViewModel.PageSizeType = PageSizeType.Custom;
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
_service.DrawModeViewModel.VectorLineDrawMode = DrawMode.BoundaryConnectingLine;
2022-11-30 22:28:22 +08:00
DiagramViewModel.PropertyChanged += DiagramViewModel_PropertyChanged;
}
private void DiagramViewModel_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
{
if (e.PropertyName == "IsSelected")
{
RaisePropertyChanged(nameof(SelectedItem));
}
2022-11-30 19:07:40 +08:00
}
}
}