2017-10-17 9 views
-1

In .NET Framework können Sie System.Windows.Forms.OpenFileDialog für geöffnete Dateien mit der systemeigenen Windows-Benutzeroberfläche verwenden, die jedoch nur unter Windows funktioniert.OpenFileDialog on .NET Core

Es gibt eine System.Windows.Forms.OpenFileDialog Implementierung für .Net Core oder eine andere Alternative?

+3

Die .NET Core-Codebase hat absichtlich alle plattformspezifischen APIs (einschließlich WinForms/WPF und jedes andere UI-Element) weggelassen. Sie können versuchen, einige plattformübergreifende Alternative wie Gtk # und vielleicht Qt oder Xamarin.Forms (nicht sicher über die letzte). Noch besser, behalten Sie Ihren Nicht-UI-Code in einem .NET-Standardprojekt und verweisen Sie ihn von mehreren plattformspezifischen UI-Projekten. –

Antwort

4

.NET Core selbst enthält keine APIs für jede Benutzeroberfläche. Zum Beispiel zeigt https://docs.microsoft.com/en-us/dotnet/api/?view=netcore-2.0&term=File nichts Relevantes. Dies ist auch die aktuelle Position von .NET Core-Entwickler: https://github.com/dotnet/core/issues/374

Es gibt mehrere externe Bibliotheken, die auf bestimmten Plattformen arbeiten können:

Wenn Sie nicht wirklich an .NET Core selbst gebunden. UWP (das auf .NET Standard aufbaut, aber von .NET Core abweicht) könnte ebenfalls eine Option sein.