public DrawAdorner(Canvas itemsPanel, Point?selectionStartPoint, IDesignerViewModel designerPanel, IDrawableItem drawableItem) : base(itemsPanel) { _itemsPanel = itemsPanel; _drawableInstance = drawableItem; _selectionStartPoint = selectionStartPoint; _designerPanel = designerPanel; }
private static void OnDesignerLoaded(object sender, RoutedEventArgs e) { var itemsPresenter = (sender as Designer).GetVisualChild <ItemsPresenter>(); _itemsPanel = VisualTreeHelper.GetChild(itemsPresenter, 0) as Canvas; var dataContext = (sender as Designer).DataContext; _designerViewModel = dataContext as IDesignerViewModel ?? throw new ArgumentException("datacontext must implement IDesignerViewModel interface"); }
private static void OnDesignerLoaded(object sender, RoutedEventArgs e) { var designer = sender as Designer; _designerVewModel = designer.DataContext is IDesignerViewModel ? designer.DataContext as IDesignerViewModel : throw new ArgumentException("Designers datacontext must be IDesignerViewModel"); var itemsPresenter = designer.GetVisualChild <ItemsPresenter>(); var itemsControl = designer.GetVisualChild <ItemsControl>(); _itemsPanel = VisualTreeHelper.GetChild(itemsPresenter, 0) as Canvas; }
public XamlViewModel(IDesignerViewModel designerViewModel) { _designerViewModel = designerViewModel; _designerViewModel.SurfaceChanged += SurfaceChanged; Document = new TextDocument(); Document.TextChanged += Document_TextChanged; _modelTimer.Interval = TimeSpan.FromSeconds(1); _modelTimer.Tick += (sender, e) => UpdateModel(); _textTimer.Interval = TimeSpan.FromSeconds(1); _textTimer.Tick += (sender, e) => UpdateText(); ErrorText = string.Empty; ErrorVisibility = Visibility.Visible; TextBoxVisibility = Visibility.Visible; }
public WDUCLViewModel() { _isReadOnly = true; AllowClosePanel = true; Errors = new ObservableCollection <DesignerErrorDefinition>(); //STUB: не делаем Flush //узнаем об изменении модели здесь _designerViewModel = IoC.Instance.Resolve <IDesignerViewModel>(); _designerViewModel.SurfaceChanged += delegate { ((IDesignerSurface)_designerViewModel.CurrentSurface).Designer.ModelChanged += delegate { var xml = GetXamlValue(Source); SetXamlValue(Source, " "); SetXamlValue(Source, xml); }; }; _xamlViewModel = new XamlViewModel(_designerViewModel); _xamlViewModel.Document.TextChanged += delegate { SetXamlValue(Source, _xamlViewModel.Document.Text); }; if (Commands == null) { Commands = new List <ICommand>(); } NewCommand = new DelegateCustomCommand(New, CanNew); OpenCommand = new DelegateCustomCommand(Open, CanOpen); SaveToFileCommand = new DelegateCustomCommand(SaveToFile, CanSaveToFile); CompileCommand = new DelegateCustomCommand(Compile, CanCompile); RunCommand = new DelegateCustomCommand(Run, CanRun); FullScreenModeCommand = new DelegateCustomCommand(FullScreenModeChange); Commands.AddRange(new[] { NewCommand, OpenCommand, SaveToFileCommand, SaveCommand, CompileCommand, RunCommand, FullScreenModeCommand }); RiseCommandsCanExecuteChanged(); }
public PropertyInspectorView(IDesignerViewModel designerViewModel) { InitializeComponent(); this.DataContext = designerViewModel; }
public DesignerView(IDesignerViewModel designerViewModel) { InitializeComponent(); this.DataContext = designerViewModel; }