Benötigen Sie die Vorabversion von .Net Core 3.0
Danke @stricq.
Die Unterstützung von .NET Core 3.0 ist definitiv ein Ziel. Ich könnte jedoch anfangen, daran zu arbeiten, nachdem RTM ausgeliefert wurde. Wenn Sie sich also für die Vorabversion interessieren, würde ich mich über eine PR freuen
Wie ist der aktuelle Stand zu diesem Thema?
Eine leichte Beule, wir migrieren unsere WPF-Projekte zu .NET Core. Es wäre großartig, wenn wir die Ookii-Bibliotheken so schnell wie möglich migrieren könnten.
Ich habe die vorhandene Framework-Version in einem Core 3.1-Projekt installiert und habe eine Compiler-Warnung erhalten, dass das Paket mit verschiedenen Framework-Versionen bis 4.8 anstelle von Core 3.1 wiederhergestellt wurde und möglicherweise nicht vollständig mit meinem Projekt kompatibel ist.
Es scheint jedoch für die folgende Verwendung zu kompilieren und in Ordnung zu sein:
var dialog = new Ookii.Dialogs.Wpf.VistaFolderBrowserDialog( );
dialog.Description = "choose folder in which to store scripts for this project";
dialog.RootFolder = Environment.SpecialFolder.MyComputer; // not implemented
dialog.ShowNewFolderButton = true;
dialog.UseDescriptionForTitle = true;
bool result = dialog.ShowDialog( this ).GetValueOrDefault( );
Was passiert, wenn der Ookii-Code in die Dateien eines neuen Core 3.1-Projekts eingefügt wird?
Es wäre schön, wenn die RootFolder-Eigenschaft in VistaFolderBrowserDialog implementiert würde.
Die Verwendung der .NET Framework-Assembly in einem .NET Core-Projekt hat zwei Konsequenzen:
Wenn Sie also die Compiler-Warnung ertragen können, scheint es im Allgemeinen ziemlich sicher zu sein, diese Bibliothek in einem .NET Core-Projekt zu verwenden. Ich hoffe trotzdem, dass wir die .NET Core-Version bekommen können.
Das TaskDialog
funktioniert in .NET Core 3.1 nicht. Aber VistaFolderBrowserDialog
und ProgressDialog
haben kein Problem.
Die folgende Ausnahme wird von TaskDialog.ShowDialog()
ausgelöst.
System.EntryPointNotFoundException
In der DLL 'comctl32.dll' konnte kein Einstiegspunkt mit dem Namen 'TaskDialogIndirect' gefunden werden.
Ich habe auch # 7 versucht, aber das gleiche Ergebnis.
Das Betriebssystem ist Windows 10 1909.
MainWindow
.csharp
TaskDialog taskDialog = new TaskDialog()
{
WindowTitle = "Title",
MainIcon = TaskDialogIcon.Information,
MainInstruction = "test",
Content = "TEST",
ExpandedInformation = "detail"
};
taskDialog.Buttons.Add(new TaskDialogButton(ButtonType.Ok));
taskDialog.ShowDialog();
@ haruby511 Ich hatte auch dieses Problem. Es muss jedoch nur ein wenig bearbeitet werden, damit die Bibliothek auf TaskDialog
zugreifen kann.
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
Kommentieren Sie dies aus.
Das sollte das Problem beheben.
GitHub hat dieses Problem mit der Zusammenführung von PR # 7 automatisch geschlossen, daher öffne ich es erneut. Ich plane, am kommenden Wochenende ein Pre-Release-Paket zu veröffentlichen.
Ookii.Dialogs.Wpf 2.0.0-Preview1 wurde auf nuget.org veröffentlicht
Install-Package Ookii.Dialogs.Wpf -Version 2.0.0-preview1
Bitte testen Sie in Ihren Apps und melden Sie alle Probleme, die Sie finden.
Vielen Dank an @ acemod13 für die ganze Arbeit!
Eine stabile Version mit Unterstützung für .NET 3.1 wurde auf nuget.org veröffentlicht: Ookii.Dialogs.Wpf 2.0.0
Install-Package Ookii.Dialogs.Wpf -Version 2.0.0
Hinweis: WPF-Apps unter .NET Core 3.1 müssen ein Anwendungsmanifest deklarieren, um Ookii-Dialoge verwenden zu können. Das Manifest wurde automatisch in .NET Framework-Apps hinzugefügt, aber mit .NET Core 3.1 ist dies nicht mehr der Fall, sodass der Entwickler einen kleinen zusätzlichen Schritt ausführen muss. Weitere Details zur README dieses Repos.
Nochmals vielen Dank an
/ cc @stricq @cheesi @lklauder @hillin @ haruby511 @vpenades @Agagamand @ NateTheGreat714 @andreasgrosche
Hilfreichster Kommentar
Eine leichte Beule, wir migrieren unsere WPF-Projekte zu .NET Core. Es wäre großartig, wenn wir die Ookii-Bibliotheken so schnell wie möglich migrieren könnten.