Besoin de la version préliminaire de .Net Core 3.0
Merci @stricq.
La prise en charge de .NET Core 3.0 est définitivement un objectif. Je pourrais commencer à travailler dessus après la livraison de RTM, donc si la version préliminaire est quelque chose qui vous tient à cœur, je serais heureux d'obtenir un PR
Quel est l'état actuel de cette question?
Une légère bosse, nous migrons nos projets WPF vers .NET Core, ce serait formidable si nous pouvons migrer les bibliothèques Ookii dès que possible.
J'ai installé la version du framework existante dans un projet Core 3.1 et j'ai un avertissement du compilateur indiquant que le package a été restauré à l'aide de différentes versions de framework jusqu'à 4.8 plutôt que Core 3.1 et qu'il n'est peut-être pas entièrement compatible avec mon projet.
Cependant, il semble compiler et fonctionner correctement pour l'utilisation suivante:
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( );
Que se passe-t-il si le code Ookii est collé dans les fichiers d'un nouveau projet Core 3.1?
Ce serait bien d'implémenter la propriété RootFolder dans VistaFolderBrowserDialog.
L'utilisation de l'assembly .NET Framework dans un projet .NET Core a deux conséquences:
Donc, en général, si vous pouvez supporter l'avertissement du compilateur, il semble assez sûr d'utiliser cette bibliothèque dans un projet .NET Core. J'espère toujours que nous pourrons obtenir la version .NET Core.
Le TaskDialog
ne fonctionne pas dans .NET Core 3.1. Mais VistaFolderBrowserDialog
et ProgressDialog
n'ont pas de problème.
Sous l'exception lancée à partir de TaskDialog.ShowDialog()
.
System.EntryPointNotFoundException
Impossible de trouver un point d'entrée nommé «TaskDialogIndirect» dans la DLL «comctl32.dll».
J'ai aussi essayé le n ° 7 mais le même résultat.
Le système d'exploitation est 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 J'ai également eu ce problème. Mais il suffit d'un peu d'édition dans votre projet pour que la bibliothèque puisse accéder au TaskDialog
.
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
Décommentez ceci.
Cela devrait résoudre le problème.
GitHub a automatiquement fermé ce problème avec la fusion de PR # 7, donc je rouvre. Je prévois de publier une pré-version le week-end prochain.
Ookii.Dialogs.Wpf 2.0.0-preview1 a été publié sur nuget.org
Install-Package Ookii.Dialogs.Wpf -Version 2.0.0-preview1
Veuillez tester vos applications et signaler les problèmes que vous rencontrez.
Merci à @ acemod13 pour tout le travail!
Une version stable avec prise en charge de .NET 3.1 a été publiée sur nuget.org: Ookii.Dialogs.Wpf 2.0.0
Install-Package Ookii.Dialogs.Wpf -Version 2.0.0
NB: les applications WPF sur .NET Core 3.1 doivent déclarer un manifeste d'application pour pouvoir utiliser les dialogues Ookii. Le manifeste a été ajouté automatiquement dans les applications .NET Framework, mais avec .NET Core 3.1 ce n'est plus le cas, il y a donc une petite étape supplémentaire que le développeur doit faire. Plus de détails sur le README de ce repo.
Merci encore à @ acemod13 pour la contribution!
/ cc @stricq @cheesi @lklauder @hillin @ haruby511 @vpenades @Agagamand @ NateTheGreat714 @andreasgrosche
Commentaire le plus utile
Une légère bosse, nous migrons nos projets WPF vers .NET Core, ce serait formidable si nous pouvons migrer les bibliothèques Ookii dès que possible.