public MainWindowModel() { string databasePath = @"D:\Dev\Database"; ISqlService sqlService = new SqliteService(); DatabaseNavigation = new DatabaseNavigationViewModel(); ObservableTreeItem item = new ObservableTreeItem { Name = "Database", Path = databasePath, Type = ItemTypeModel.Folder }; CreateTableDialog dialog = new CreateTableDialog(databasePath, sqlService); //dialog.ShowDialog(); item.Items = new ObservableCollection <ObservableTreeItem>(sqlService.GetItems(item.Translate()).Select(i => i.Translate())); DatabaseNavigation.Items.Add(item); DatabaseNavigation.RefreshDatabases(); DatabaseVisualizationViewModel = new DatabaseVisualizationViewModel(); DatabaseVisualizationViewModel.Documents.Add(new Document { FilePath = @"Users\Andy\file.sqe" }); DatabaseVisualizationViewModel.AvailableDatabases = new ObservableCollection <string> { databasePath + @"\home.db" }; DatabaseVisualizationViewModel.ActiveDatabase = DatabaseVisualizationViewModel.AvailableDatabases[0]; }
private void OnNewTableRequested(ObservableTreeItem item) { if (item != null && SelectedItem.Type == ItemTypeModel.Database) { CreateTableDialog dialog = new CreateTableDialog(SelectedItem.Path, _sqliteService); if (dialog.ShowDialog() ?? false) { ObservableTreeItem newItem = new ObservableTreeItem { Name = dialog.TableName, Path = dialog.DatabasePath, Type = ItemTypeModel.Table }; newItem.Items = new ObservableCollection <ObservableTreeItem>(_sqliteService.GetItems(newItem.Translate()).Select(i => i.Translate())); item.Items.Add(newItem); } } else { WpfMessageBox.ShowDialog("Invalid Operation", "Please select a database for this operation.", MessageBoxButton.OK, MessageIcon.Error); } }