添加到从Excel导入的对话框
This commit is contained in:
67
Views/Dialogs/ImportExcelDialog.xaml.cs
Normal file
67
Views/Dialogs/ImportExcelDialog.xaml.cs
Normal file
@@ -0,0 +1,67 @@
|
||||
using Microsoft.Win32;
|
||||
using PMSWPF.ViewModels.Dialogs;
|
||||
using System.IO;
|
||||
using System.Windows;
|
||||
using iNKORE.UI.WPF.Modern.Controls;
|
||||
|
||||
namespace PMSWPF.Views.Dialogs;
|
||||
|
||||
public partial class ImportExcelDialog : ContentDialog
|
||||
{
|
||||
public ImportExcelDialog(ImportExcelDialogViewModel viewModel)
|
||||
{
|
||||
InitializeComponent();
|
||||
DataContext = viewModel;
|
||||
}
|
||||
|
||||
private void Dialog_DragEnter(object sender, DragEventArgs e)
|
||||
{
|
||||
if (e.Data.GetDataPresent(DataFormats.FileDrop))
|
||||
{
|
||||
e.Effects = DragDropEffects.Copy;
|
||||
}
|
||||
else
|
||||
{
|
||||
e.Effects = DragDropEffects.None;
|
||||
}
|
||||
}
|
||||
|
||||
private void Dialog_Drop(object sender, DragEventArgs e)
|
||||
{
|
||||
if (e.Data.GetDataPresent(DataFormats.FileDrop))
|
||||
{
|
||||
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
|
||||
if (files.Length > 0)
|
||||
{
|
||||
string extension = Path.GetExtension(files[0]);
|
||||
if (extension.Equals(".xls", StringComparison.OrdinalIgnoreCase) ||
|
||||
extension.Equals(".xlsx", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (DataContext is ImportExcelDialogViewModel viewModel)
|
||||
{
|
||||
viewModel.FilePath = files[0];
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// MessageBox.Show("Please drop a valid Excel file (.xls or .xlsx).", "Invalid File Type", MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void SelectFile_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var openFileDialog = new OpenFileDialog
|
||||
{
|
||||
Filter = "Excel Files (*.xlsx)|*.xlsx|All files (*.*)|*.*"
|
||||
};
|
||||
if (openFileDialog.ShowDialog() == true)
|
||||
{
|
||||
if (DataContext is ImportExcelDialogViewModel viewModel)
|
||||
{
|
||||
viewModel.FilePath = openFileDialog.FileName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user