private async void OnOpenFile(object sender, RoutedEventArgs e)
{
OpenButton.IsEnabled = false;
Microsoft.Win32.OpenFileDialog fo = new Microsoft.Win32.OpenFileDialog();
fo.Filter = "PX4 Log Files (*.px4log)|*.px4log|CSV Files (*.csv)|*.csv|bin files (*.bin)|*.bin|mavlink files (*.mavlink)|*.mavlink";
fo.CheckFileExists = true;
fo.Multiselect = true;
if (fo.ShowDialog() == true)
{
foreach (var file in fo.FileNames)
{
switch (System.IO.Path.GetExtension(file).ToLowerInvariant())
{
case ".csv":
await Task.Run(async () => { await LoadCsvFile(file); });
break;
case ".bin":
case ".px4log":
await Task.Run(async () => { await LoadBinaryFile(file); });
break;
case ".mavlink":
await Task.Run(async () => { await LoadMavlinkFile(file); });
break;
default:
MessageBox.Show("Do not know how to read files of type : " + System.IO.Path.GetExtension(file),
"Unsupported file extension", MessageBoxButton.OK, MessageBoxImage.Exclamation);
break;
}
}
}
OpenButton.IsEnabled = true;
}