private async void MainWindow_OnDrop(object sender, DragEventArgs e) { if (!e.Data.GetDataPresent(DataFormats.FileDrop)) { return; } var filenames = (string[])e.Data.GetData(DataFormats.FileDrop); var droppedFilterFiles = new List <string>(); foreach (var filename in filenames) { var extension = Path.GetExtension(filename); if (extension != null && (extension.ToUpperInvariant() == ".FILTER" || extension.ToUpperInvariant() == ".FILTERTHEME")) { droppedFilterFiles.Add(filename); } } if (droppedFilterFiles.Count > 0) { await _mainWindowViewModel.OpenDroppedFilesAsync(droppedFilterFiles); } }