private void AddFileToDatabase(DatabaseReference database) { var dialog = new OpenFileDialog() { Filter = "All files|*.*", Multiselect = false }; if (dialog.ShowDialog() != true) { return; } try { if (InputBoxWindow.ShowDialog("New file id:", "Enter new file id", Path.GetFileName(dialog.FileName), out string id) == true) { var file = database.AddFile(id, dialog.FileName); SelectedCollection = database.Collections.First(a => a.Name == "_files"); ListCollectionData.SelectedItem = file; ListCollectionData.ScrollIntoView(ListCollectionData.SelectedItem); } } catch (Exception exc) { MessageBox.Show( "Failed to upload file:" + Environment.NewLine + exc.Message, "Database error", MessageBoxButton.OK, MessageBoxImage.Error ); } }
private void AddCommand_Executed(object sender, ExecutedRoutedEventArgs e) { if (SelectedCollection is FileCollectionReference) { AddFileToDatabase(SelectedCollection.Database); } else { var newDoc = new BsonDocument { ["_id"] = ObjectId.NewObjectId() }; ListCollectionData.SelectedItem = SelectedCollection.AddItem(newDoc); ListCollectionData.ScrollIntoView(ListCollectionData.SelectedItem); UpdateGridColumns(newDoc); } }
private void SelectDocumentInView(DocumentReference document) { ListCollectionData.SelectedItem = document; ListCollectionData.ScrollIntoView(document); }