private void CreateCommands() { LineCommand = new RelayCommand(() => { Canvas.InstallTool(new LineTool(), (tool) => LineCommand.RaiseCanExecuteChanged()); }, () => Canvas.ActiveTool == null); PolylineCommand = new RelayCommand(() => { Canvas.InstallTool(new PolylineTool(), (tool) => CommandManager.InvalidateRequerySuggested() /*PolylineCommand.RaiseCanExecuteChanged()*/); }, () => Canvas.ActiveTool == null); ToggleGridSnapCommand = new RelayCommand(EnableGridSnapCommandExecute); ToggleElementSnapCommand = new RelayCommand(EnableElementSnapCommandExecute); DeleteCommand = new RelayCommand(() => { Canvas.RemoveSelected(); }, () => Canvas.Selection.All.Any()); EnablePanModeCommand = new RelayCommand(EnablePanModeCommandExecute); }